concurrency - 什么是协程?

标签 concurrency language-agnostic terminology coroutine

什么是协程?它们与并发有什么关系?

最佳答案

协程和并发在很大程度上是正交的。协程是一种通用的控制结构,流量控制在两个不同的例程之间协同传递而不返回。

Python 中的“yield”语句就是一个很好的例子。它创建了一个协程。当遇到“yield”时,函数的当前状态被保存,控制权返回给调用函数。然后调用函数可以将执行转移回让步函数,它的状态将恢复到遇到“yield”的点,执行将继续。

关于concurrency - 什么是协程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2436361/

相关文章:

terminology - 延迟加载和延迟评估有什么区别?

c++ - C++中有没有办法同时在多个线程上调用join?

go - 等待 go 例程完成然后从 channel 读取

javascript - 回调也称为高阶函数吗?

language-agnostic - round() 和 trunc() 函数有什么区别?

language-agnostic - 每个递归都可以转化为迭代吗?

terminology - 功能性变更和技术性变更有什么区别?

c++ - 如何解决 openFrameworks 和其他音频应用程序之间的冲突?

c++ - memory_order_seq_cst 操作的 "happens before"和 "precedes in a single total order"关系有什么区别?

language-agnostic - 垃圾收集可以与显式内存管理共存吗?