前言
生产者-消费者
生产者A做面条,消费者B吃面条。A做完面条,B吃面条,吃完了,A再做...
则,有两种模式:
- 在消费者B吃面的function中插入resume唤醒生产者A,A生产完后放置一个yield(面条),返回面条并暂停,B接到返回值(面条)后开始吃。
- 在生产者A生产的function中插入resume(面条)唤醒消费者B,B吃完后放置一个yield,暂停,A继续做面条。
可见,主循环放在B和A中都可以,一方为主,另一方为服务。
【Lua】协程的应用
原文:http://www.cnblogs.com/isha2088/p/6511620.html