~/talk

Thread Safety First!

Talkat dotRB 2013 · on Monday, 2013-10-28· [ruby]
github:estolfo
slides:none on file

Demo uses Ruby 2.0 and jruby174 and runs with 200 threads (and sometimes 10) against a shared Set (a Hash derivative) inside the MongoDB Ruby driver. Execution on JRuby sometimes raises can't add a new key into hash during iteration, exposing different semantics across MRI and JRuby. The talk shows fixing it with fine‑grained locking and mutex and condition variable patterns, plus testing across implementations and heavy threading to reproduce race conditions.

AI-written summary · about

  1. 0:00Introduction and demo
  2. 1:37Threading models compared
  3. 4:02Metaphor for threading
  4. 6:45Shared state in practice
  5. 10:16Concurrency primitives
  6. 14:04Resource management
  7. 15:47Testing and conclusion
~/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.