~/talk

The Networking TS from Scratch: I/O Objects

Talkat CppCon 2020 · 2020-09-14..09-18· [networking]
links:none on file
slides:none on file

Shows how to implement a baseline I/O object from the Networking TS by building an asynchronous condition variable called async_event, a type‑erasing movable pending wrapper (pending) that preserves associated allocator and executor guarantees, and a service to offload handler ownership and break cycles. Uses async_initiate, Boost.Asio/standalone Asio semantics and p0443 executor properties (including outstanding_work.tracked) to keep io contexts alive. Includes unit tests and example code on the linked GitHub proving the design works.

AI-written summary · about

  1. 0:00Intro
  2. 1:45Status of Networking TS
  3. 4:03Asynchronous Operations
  4. 5:55Recap
  5. 8:30Sequence Diagram
  6. 10:40Baseline Layer
  7. 13:46Completion Handlers
  8. 14:38Invocable Objects
  9. 15:27PendingUnary
  10. 21:10AsyncInitiate
  11. 24:07Completion Tokens
  12. 25:12Semantics
  13. 27:35Semantics with P0443
  14. 29:00Review
  15. 30:21Ownership Cycle
  16. 31:42Service
  17. 32:17Service Definition
  18. 33:35Service Ownership
  19. 35:42Service Functions
  20. 37:09Service Type
  21. 38:54Service Member
  22. 42:39Execution Context
  23. 43:46Run Functions
  24. 44:51executor
  25. 46:46IO executor
  26. 49:27Prefer not require
  27. 52:55Summary
  28. 55:09Questions
~/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.