~/talk

A Deep Dive Into Sendable

Talkat #Pragma Conference 2024 · 2024-10-29..10-30· [concurrency, swift]
slides:none on file

Sendable gives the compiler data race guarantees so code that used to crash under concurrent access is now a compile time problem, not a runtime mystery. Migrating Vapor took one year and uses actors, explicit locks, and a NELockValueBox pattern plus targeted use of @unchecked Sendable to opt out when safe. Swift 5 package flags and Swift 6 features like the sending keyword and proposal numbers 302 414 430 guide the migration and enable zero warnings with strict concurrency.

AI-written summary · about

  1. 0:00Introduction and speaker intro
  2. 1:49Why Sendable exists in Swift
  3. 6:45What is Sendable and its purpose
  4. 8:10How Sendable works with types
  5. 10:25Sendable with reference types
  6. 12:03Making classes Sendable safely
  7. 14:12Unchecked Sendable and risks
  8. 16:20Swift 6 isolation and Sendable
  9. 17:44Sending keyword for non-Sendable types
  10. 19:10Safe mutable values with locks
  11. 20:15Vapor’s Sendable adoption journey
  12. 23:02Maintaining API compatibility
  13. 25:40Recap and key takeaways
  14. 27:31Q&A session
~/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.