C++20协程学习笔记

协程基本概念

C++20引入了协程支持,提供了三个关键字:

co_await

用于等待一个异步操作完成。当遇到co_await时,协程会暂停执行并让出控制权,直到异步操作完成。

co_return

协程的返回语句,用于返回一个值并结束协程的执行。与普通函数的return不同,co_return会触发协程的清理流程。

co_yield

暂停协程执行并返回一个值,但不会结束协程。当协程重新恢复执行时,会从co_yield的下一条语句继续执行。

图片展示

协程原理图1

协程示例代码

协程执行流程

协程执行流程