Extending std::execution Further - Higher-Order Senders and the Shape of Asynchronous Programs
summary
Shows how std::execution in C++26 implements higher-order senders by building two concrete algorithms: branch and repeat. Delivers operation-state classes, a chain stop source and a storage-for-completion-signatures type, plus a consteval reflection helper that synthesizes output completion signatures. Demonstrates spawning child senders, graceful vs abortive fan-in, allocator-aware child allocation, and structured-concurrency cleanup — culminating in an asynchronous server that accepts new connections while previously spawned handlers run concurrently.
AI-written summary · about
chapters (30)
- 0:00std::execution in C++26
- 2:09Async program patterns
- 3:12repeat algorithm
- 5:40Operation state design
- 8:47Exceptions in operation states
- 10:11Throwingness and environments
- 11:34repeat destructor
- 12:37Sync server as async
- 14:23Async design pitfalls
- 16:51branch algorithm
- 17:55branch sender behavior
- 20:03branch state composition
- 21:28Stop source and lifetimes
- 23:13Completion signatures storage
- 24:15Completion signatures
- 26:20Reflection for signatures
- 29:06Transforming child signatures
- 32:14branch state overview
- 33:58Environment stop tokens
- 36:06branch storage via reflection
- 36:27Maybe complete logic
- 38:55Erroneous signatures storage
- 39:58Start and exceptions
- 40:27Spawning child ops
- 42:48branch state interface
- 43:50Completions and fan-in
- 45:13Child state implementation
- 47:18Completing the branch implementation
- 47:59Transforming server example
- 49:23Significance of std::execution
related talks
01h 11mAsynchronous C++
01h 31mTowards Async Everything Part 1 - Senders as the Lowest Layer
01h 24mEasy Senders/Receivers
17mGetting Started with Senders and Receivers in C++ Programming
01h 01mExecutors for C++ - A Long Story ...
01h 03mDesigning a Unified Interface for Execution
01h 21mStructured Concurrency
01h 31mTowards Async Everything Part 2 - Scopes, Construction, and Destruction
