~/talk

Extra! Extra! Thread all about it!

Talkat droidcon London 2019 · 2019-10-24..10-25· [concurrency]
links:none on file
links:none on file
slides:none on file

Android threading uses a simple message-queue + looper + handler model under the hood and Kotlin coroutines map to the same ideas via channels; Systrace shows thread states and revealed a priority inversion where a low-priority background future blocks the main thread causing long waits. The team implements priority inheritance for futures and locks so background workers temporarily match the UI priority, and experiments show OEM tricks like core pinning and Systrace-visible scheduling make this brittle; a work-transfer (UI steals partial work) optimization improves latency but requires splitting and fast state handoff.

AI-written summary · about

  1. 0:00Introduction to threading
  2. 1:05Why use threads on Android
  3. 2:11UI thread and jank prevention
  4. 3:15Android threading primitives
  5. 4:40Handler Thread explained
  6. 6:26IntentService and AsyncTask
  7. 7:31Coroutines vs threading
  8. 8:55Channels for coroutines
  9. 10:00Channel back pressure
  10. 12:47Threading for performance
  11. 14:33Future experiments
  12. 15:35Systrace thread analysis
  13. 17:20Priority inversion issue
  14. 18:45Priority inheritance solution
  15. 20:12OEM optimizations impact
  16. 21:58Core pinning challenges
  17. 23:01Work transfer between threads
  18. 24:46Parallel execution benefits
  19. 26:12Key takeaways and conclusion
  20. 26:35Q&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.