~/talk

Applied concurrency in Go

Talkat dotGo 2015 · on Monday, 2015-11-09· [go]
slides:none on file

A concrete progression: initial mutex-based cooks serialize work and take ~15s; naive goroutines fire everything and exit almost instantly but lose work; introducing sync.WaitGroup and per-chef goroutines plus an order wheel implemented with channels replace mutexes brings runtime down to ~7.8s and avoids premature shutdown; hardware validation uses Arduino LEDs; a remaining bug is a data race on a shared map detected with go run -race, showing channels and wait groups help but do not automatically fix shared-memory races.

AI-written summary · about

  1. 0:00Introduction to Splice
  2. 1:01High-level system architecture
  3. 2:34The restaurant metaphor
  4. 3:28Initial data model and coding
  5. 5:32Testing synchronous approach
  6. 8:01Introducing goroutines
  7. 8:59Using wait groups
  8. 10:51Refactoring with channels
  9. 12:05Fixing channel bugs
  10. 13:59Addressing data races
  11. 15:34Lessons in concurrent code
~/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.