~/talk

The Hidden Art of Thread-Safe Programming: Exploring java.util.concurrent

Talkat Voxxed Days Thessaloniki 2025 · 2025-11-07..11-08· [java, concurrency]
slides:none on file

Shows concrete concurrency failures and fixes: Vector’s serialization race then deadlock between nested V1↔V2 was fixed across Java 1.4→1.7; LongAdder (striped cells with @Contended) beats AtomicLong — 116ms vs 5s on 100M increments; LockSupport’s rare unpark loss needs class-initialization workarounds; LinkedBlockingQueue uses lock splitting so 1-producer/1-consumer wins but extra consumers slow it; ArrayBlockingQueue offers weakly consistent iteration via weak refs; CopyOnWriteArrayList does O(n) find‑then‑remove (check‑then‑act).

AI-written summary · about

  1. 0:00Thread-safe programming intro
  2. 1:13Pitfalls of Vector class
  3. 6:15Java Memory Model rules
  4. 10:51JDK concurrent classes vs custom
  5. 14:04Demo: Striped64 and LongAdder
  6. 20:25Bugs in Java concurrent classes
  7. 22:50Thread-safe starting gun
  8. 27:28Lock splitting in LinkedBlockingQueue
  9. 34:11Weakly consistent queue iteration
  10. 36:58Conclusion & Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.