coroutine是独立的概念,所以不是看不懂cpp20的coroutine,是看不懂coroutine。
看wikepedia的词条有帮助。
我的理解:你有2个函数,routine1 ,routine2。这俩函数呢,比较变态,
都有goto,routine1执行一半,比如做好个蛋糕,goto到 routine2。routine2
接力把routine1的蛋糕吃掉,然后再goto到routine1。routine1继续做蛋糕……
因为是两个routine合作,所以叫coroutine。因为是goto,还在同一线程,所以
没有切换开销。上面的例子就是消费者生产者模型。
【 在 eematlab 的大作中提到: 】
: 云里雾里有点夸张,但的确没有那种醍醐灌顶的感觉
: 就没人能从存在的问题,需求, 到实现方案,具体应用串起来
: 文章一般是告诉你函数要暂停恢复,然后告诉你promise, future, generator
: ...................
--
FROM 117.39.196.*