~/talk

Reasoning with Async Rust

Talkat Rustikon 2025 · on Wednesday, 2025-03-26· [rust, concurrency]
slides:none on file

A runnable toy — cracking eggs, frying eggs and bacon — uses async, await, join, select to show concrete interleavings, then adds a shared spoon and pan to demonstrate a reproducible deadlock and a high‑frequency livelock that heating the CPU without progress. The slide‑level fix of combining mutexes trades concurrency for safety; an implemented actor model using channels keeps pan and spoon private and works reliably. The claim: async makes reasoning about timelines easier but does not replace redesign or testing.

AI-written summary · about

  1. 0:00Concurrency bugs intro
  2. 2:13What is concurrency
  3. 3:38Sync breakfast example
  4. 4:22Async programming basics
  5. 6:06Why async helps
  6. 7:29Concurrency risks
  7. 8:12Select for time-bound ops
  8. 10:00Shared state bugs
  9. 11:24Mutexes for shared state
  10. 12:56Deadlocks from ordering
  11. 13:39Debugging deadlocks
  12. 15:26Introducing and solving livelocks
  13. 17:51Async limitations
  14. 18:32Re-engineering to avoid bugs
  15. 19:16Actors concurrency model
  16. 21:46Actors prevent shared state
  17. 23:36Timeline with actor messages
  18. 23:58Key takeaways
  19. 24:40Further learning resources
~/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.