看一段代码:
关于Duff's device的详细描述可以见http://en.wikipedia.org/wiki/Duff's_device
利用这个特性,可以实现C语言的协程,详见http://www.chiark.greenend.org.uk/~sgtatham/coroutines.html
关于协程和线程的区别:线程由操作系统负责调度,程序不能依赖线程调度的顺序,而协程可以做到这点;另外线程过多也会导致cpu频于调度造成资源浪费,协程不存在这种现象。
看一段代码:
关于Duff's device的详细描述可以见http://en.wikipedia.org/wiki/Duff's_device
利用这个特性,可以实现C语言的协程,详见http://www.chiark.greenend.org.uk/~sgtatham/coroutines.html
关于协程和线程的区别:线程由操作系统负责调度,程序不能依赖线程调度的顺序,而协程可以做到这点;另外线程过多也会导致cpu频于调度造成资源浪费,协程不存在这种现象。