Understanding the Concept of C++ Coroutine: A Specification for Functional Coroutines
C++ coroutine is a specification that defines customization points for library writers to implement functional coroutines, extending the capabilities of functions to support suspend, resume, and destroy operations in addition to call and return.