协程是一中多任务实现方式,它不须要多个进程或线程就能够实现多任务。 yield能实现协程,不过实现过程不易于理解,greenlet是在这方面作了改进,经过switch。 greenlet能够实现协程,不过每一次都要人为的去指向下一个该执行的协程,显得太过麻烦。 python还有一个比greenlet更强大的而且可以自动切换任务的模块gevent,gevent每次遇到io操做,须要耗时等待时,会自动跳到下一个协程继续执行