溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python中協程的作用是什么

發布時間:2021-04-27 16:53:42 來源:億速云 閱讀:326 作者:Leah 欄目:編程語言

python中協程的作用是什么?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

Python的優點有哪些

1、簡單易用,與C/C++、Java、C# 等傳統語言相比,Python對代碼格式的要求沒有那么嚴格;2、Python屬于開源的,所有人都可以看到源代碼,并且可以被移植在許多平臺上使用;3、Python面向對象,能夠支持面向過程編程,也支持面向對象編程;4、Python是一種解釋性語言,Python寫的程序不需要編譯成二進制代碼,可以直接從源代碼運行程序;5、Python功能強大,擁有的模塊眾多,基本能夠實現所有的常見功能。

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)

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女