~/talk

Why use coroutines for asynchronous applications

Talkat Meeting C++ 2025 · 2025-11-06..11-08· [rust]
links:none on file
slides:none on file

Claims that C++20 coroutines let you write reactive, non‑blocking applications in a synchronous style and that the compiler hides complex control flow. Examples compare synchronous, callback‑style async and coroutine versions using co_await/co_return and async_task, with implementations on Boost.Asio Qt5 gRPC ROS2. Real code runs on Windows 10/11 and Ubuntu 22.04/24.04; one example suspends and resumes ~10,000 times. Result: fewer split functions and callbacks, single‑threaded cooperative multitasking that actually works.

AI-written summary · about

  1. 0:00Coroutines for async apps
  2. 1:07Goals of coroutines in async
  3. 5:21Speaker’s background and motivation for coroutines
  4. 8:15Coroutine concepts overview
  5. 18:09Sync vs async models
  6. 23:48Async programming styles
  7. 28:01Low-level I/O with coroutines
  8. 32:39Remote method invocation
  9. 34:49Protocol stacks example
  10. 40:19Sequential remote calls
  11. 44:10Parallel remote calls
  12. 46:41Nested loops in async
  13. 49:35Coroutines beyond async
  14. 54:07Thread alternatives in embedded
  15. 57:00Python for pipetting machines
  16. 58:03Completion handling thread
  17. 1:00:30gRPC with coroutines
  18. 1:03:19Summary
~/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.