coroutine资源索引

coroutine (通常被译为“协作程序”或"共行程序“)是程序设计中一个非常重要的概念,通常可用于多任务协作处理、迭代器和管道中。它最早出现于”Design of a Separable . Transition -Diagram Compiler “这篇论文中,taocp (the art of computer programming)第一卷1.4.2节也对这个概念进行简单的讲解。Building Coroutines 用图示来说明coroutine的概念。c语言中实现coroutine有以下几种方法:

(1)Coroutines in C

(2)使用c标准库的setjmp和longjmp函数,例如:

Coroutines in less than 20 lines of standard C

(3)unix/linux等遵守posix规范的系统提供了getcontext, setcontext, makecontext and swapcontext ,可以用来实现coroutine

(4)其他一些coroutine库,例如:libtask ,libpcl ,libCoroutine ,coro ,libconcurrency ,libcoro

你可能感兴趣的:(C++,c,linux,unix,C#)