~/talk

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

Talkat JNation 2026 · 2026-05-26..05-27· [java, concurrency]
slides:none on file

Walks through concrete code, bugs and benchmarks inside java.util.concurrent: demonstrates 100 million increments where AtomicLong spends ~6s and LongAdder drops to 60–120ms — roughly ~100x faster by striping cells and reducing contention; compares LinkedBlockingQueue vs LinkedBlockingDeque vs ArrayBlockingQueue with single-producer/multi-consumer effects and lock-splitting consequences; shows CopyOnWriteArrayList’s quadratic add cost and the linear addAll workaround; traces real JDK failures (Vector serialization/deadlock history and five bugs fixed in Java 26) and offers tested synchronizer patterns.

AI-written summary · about

  1. 0:00Introduction and concurrency questions
  2. 2:19Single-threaded concurrency myth
  3. 3:01Thread-safe Vector class history
  4. 8:23Why thread safety is subtle
  5. 9:28Studying Java concurrent classes
  6. 17:42LongAdder vs AtomicLong demo
  7. 24:51Hardware evolution and concurrency
  8. 28:41Building a starting gun synchronizer
  9. 35:05LinkedBlockingQueue performance
  10. 41:23ArrayBlockingQueue iteration quirks
  11. 44:53CopyOnWriteArrayList performance
  12. 48:23Thread termination and stop method
  13. 49:48Q&A and closing
~/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.