新聞中心
這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
創(chuàng)新互聯(lián)Python教程:python協(xié)程的作用
1、作用分析

成都創(chuàng)新互聯(lián)是專業(yè)的吉木薩爾網(wǎng)站建設(shè)公司,吉木薩爾接單;提供網(wǎng)站制作、成都網(wǎng)站建設(shè),網(wǎng)頁設(shè)計,網(wǎng)站設(shè)計,建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行吉木薩爾網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊,希望更多企業(yè)前來合作!
(1)當(dāng)IO密集時,使用協(xié)程會提高效率。
(2)實現(xiàn)“遇到IO切換+保存狀態(tài)”去欺騙操作系統(tǒng),讓操作系統(tǒng)誤以為沒有IO操作,擁有CPU執(zhí)行權(quán)限,從而實現(xiàn)單線程下并發(fā)。
2、實例
import time
#遇到IO切換(gevent) + 保存狀態(tài)
from gevent import monkey #猴子補丁
monkey.patch_all() #監(jiān)聽所有的任務(wù)是否有IO操作
from gevent import spawn #spawn(任務(wù))
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協(xié)程的作用,希望能對大家有所幫助。更多Python學(xué)習(xí)指路:創(chuàng)新互聯(lián)Python教程
本文教程操作環(huán)境:windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。
網(wǎng)站欄目:創(chuàng)新互聯(lián)Python教程:python協(xié)程的作用
本文鏈接:http://www.dlmjj.cn/article/djphpjc.html


咨詢
建站咨詢
