119-python-协程
"""
# 协程 :
# 本质上就是线程,只是在线程中来回切换(遇到IO才切换)
# 进程和线程中的任务切换由操作系统完成
#
greenlet 模块:
# 在线程中遇到 IO 的时候,将 IO 的执行的过程中这段时间 进行切换到另一个线程中
# 协程任务之间的切换由程序(代码)完成,只有遇到协程模块能识别的IO操作的时候,程序才会进行任务切换,实现并发的效果
"""
# 真正的协程模块就是使用 greenlet 完成的切换 from greenlet import greenlet def eat(): print('eating start') g2.switch() # 会记录当前 ,并且换到另一个程序中 print('eating end') g2.switch() def play(): print('playing start') g1.switch() print('playing end') g1 = greenlet(eat) g2 = greenlet(play) g1.switch()