概述 python多线程中因为有GIL(Global Interpreter Lock 全局解释器锁 )的存在,所以对CPU密集型程序显得很鸡肋:但对IO密集型的程序,GIL会在调用IO操作前释放,所以对IO密集型多线程还是挺有作用. 然而多线程是竞争型的,调度由CPU决定,有时会显得没那么容易控制:所以python中也实现了一种可以由程序自己来调度的异步方式,叫做协程. 协程是一种用户态的轻量级线程,又称微线程. 协程拥有自己的寄存器上下文和栈,调度切换时,将寄存器上下文和栈保存到其他地方,在…