1、优势分析
(1)协程具有很高的执行效率。由于子程序切换不是线程切换,而是由程序本身控制,因此与多线程相比,线程数量越多,协程的性能优势就越明显。
(2)不需要多线程的锁定机制,因为只有一个线程,不存在同时写变量冲突。在协程中控制共享资源不锁定只需要判断状态,所以执行效率比多线程高很多。
2、实例
defconsumer(): r='' whileTrue: n=yieldr ifnotn: return print('[CONSUMER]Consuming%s...'%n) r='200OK' defproduce(c): c.send(None) n=0 whilen<5: n=n+1 print('[PRODUCER]Producing%s...'%n) r=c.send(n) print('[PRODUCER]Consumerreturn:%s'%r) c.close() c=consumer() produce(c)
以上就是python协程的两大优势,希望能对付它们。每个人都有帮助。更多Python学习指导:python基础教程