协程
协程:是单线程下的并发,又称微线程
(1)线程由操作系统控制调度;协程由应用程序级别控制调度
(2)协程的切换开销更小,属于程序级别的切换,操作系统完全感知不到。
(3)协程是指单个线程,无法利用多核
*一个程序开启多个进程,每个进程开启多个线程,每个线程开启多个协程*
import gevent def eat(name): print('%s eat 1' %name) gevent.sleep(2) print('%s eat 2' %name) def play(name): print('%s play 1' %name) gevent.sleep(1) print('%s play 2' %name) if __name__=="__main__": g1=gevent.spawn(eat,"egon") g2=gevent.spawn(play,"egon") g1.join() g2.join() print("主") ''' egon eat 1 egon play 1 egon play 2 egon eat 2 主 '''
from gevent import monkey;monkey.patch_all() import time def eat(name): print('%s eat 1' %name) time.sleep(2) print('%s eat 2' %name) def play(name): print('%s play 1' %name) time.sleep(1) print('%s play 2' %name) if __name__=="__main__": g1=gevent.spawn(eat,"egon") g2=gevent.spawn(play,"egon") g1.join() g2.join() print("主") ''' egon eat 1 egon play 1 egon play 2 egon eat 2 主 '''
posted on 2020-03-29 11:09 happygril3 阅读(130) 评论(0) 收藏 举报
浙公网安备 33010602011771号