A conference talk transcript covering how C++20 coroutines work under the hood. It explains the difference between concurrency and parallelism, then walks through the mechanics of coroutines: the three keywords (co_yield, co_await, co_return), the promise type, coroutine handles, and the return object. Three practical examples are built step by step — a radio station generator, a pinball machine, and an average calculator — showing how to implement the promise type, iterators, and custom awaiters. The talk also covers how C++23's std::generator eliminates much of the boilerplate for generator-style coroutines.
•1h 2m watch time
3 Impressions