品易云推流 关闭
文章详情页
文章 > Python基础教程 > python协程的作用

python协程的作用

头像

小妮浅浅

2021-05-17 09:47:353045浏览 · 0收藏 · 0评论

1、作用分析

(1)当IO密集时,使用协程会提高效率。

(2)实现“遇到IO切换+保存状态”去欺骗操作系统,让操作系统误以为没有IO操作,拥有CPU执行权限,从而实现单线程下并发。

2、实例

import time
#遇到IO切换(gevent) + 保存状态
from gevent import monkey  #猴子补丁
monkey.patch_all()  #监听所有的任务是否有IO操作
from gevent import spawn  #spawn(任务)
from gevent import joinall
 
COUNT = 10000000
start = time.clock()
def countdown(n):
    while n > 0:
        n -= 1
 
sp1 = spawn(countdown, COUNT//2)
sp2 = spawn(countdown, COUNT//2)
 
# sp1.start()
# sp2.start()
# sp1.join()
# sp2.join()
joinall([sp1, sp2])  #等同于上面六步
 
print('Time used:', time.clock() - start)
# ('Time used:', 0.40398999999999985)

以上就是python协程的作用,希望能对大家有所帮助。更多Python学习指路:python基础教程

本文教程操作环境:windows7系统、Python 3.9.1,DELL G3电脑。

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图