~/talk

Asynchronous IO with Boost.Asio

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

Boost.Asio provides a portable proactor model for scalable asynchronous I/O so you avoid one-thread-per-connection; examples use io_service, async_* timers/reads/writes, buffer/streambuf views, and shared_from_this to manage lifetime. A simple TCP chat server is built: acceptor hands sockets to per-connection handlers, reads requeue themselves, sends queue on a strand so only one write runs at a time, and multiple threads service completions. Demo shows the pattern working and recommends Boost.Asio, Beast, Spirit and MSM for parsing and layering.

AI-written summary · about

  1. 0:00Introduction
  2. 1:20Overview
  3. 2:25What is asynchronous IO
  4. 4:20Why asynchronous IO
  5. 5:20Story
  6. 9:23Purpose
  7. 10:46Lessons
  8. 12:22Timers
  9. 17:46PostWork
  10. 22:36Buffers
  11. 25:53Client Handler Ownership
  12. 30:32Generic Server
  13. 32:53Start Server
  14. 36:13Check for Errors
  15. 37:36Chat Handler
  16. 42:03Read Package
  17. 49:38Packets
  18. 51:40Summary
  19. 57:58Separate IO services
  20. 59:33General IO abstraction
~/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.