怎么在python中實現(xiàn)greenlet交替運行

本篇文章給大家分享的是有關(guān)怎么在python中實現(xiàn)greenlet交替運行,小編覺得挺實用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

創(chuàng)新互聯(lián)公司是一家專注于網(wǎng)站制作、成都網(wǎng)站制作與策劃設(shè)計,晉城網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)公司做網(wǎng)站,專注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:晉城等地區(qū)。晉城做網(wǎng)站價格咨詢:18982081108

Python的優(yōu)點有哪些

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

1、greenlet說明

greenlet是一個基于Greenlet實現(xiàn)的網(wǎng)絡(luò)庫,它使用greenlet來實現(xiàn)協(xié)同程序。其基本思想是,當(dāng)greenlet遇到IO操作時,例如訪問網(wǎng)絡(luò)時,它會自動切換到其他greenlet,直到IO操作完成,然后在適當(dāng)?shù)臅r候切換回繼續(xù)執(zhí)行。因為IO操作非常耗時,而且常常使程序處于等待狀態(tài),所以使用gevent來自動切換協(xié)程,可以確保運行的是greenlet,而非等待IO操作。

2、實例

可以通過gevent.sleep()交出控制權(quán):

def test(n):
    for i in range(n):
        print(gevent.getcurrent(), i)
        gevent.sleep(1)

當(dāng)然在實際的代碼里,我們不會用gevent.sleep()去切換協(xié)程,而是在執(zhí)行到IO操作時gevent會自動完成,所以gevent需要將Python自帶的一些標(biāo)準庫的運行方式由阻塞式調(diào)用變?yōu)閰f(xié)作式運行。

以上就是怎么在python中實現(xiàn)greenlet交替運行,小編相信有部分知識點可能是我們?nèi)粘9ぷ鲿姷交蛴玫降?。希望你能通過這篇文章學(xué)到更多知識。更多詳情敬請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道。

網(wǎng)站名稱:怎么在python中實現(xiàn)greenlet交替運行
本文路徑:http://muchs.cn/article16/gdiedg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供定制開發(fā)、網(wǎng)站營銷、關(guān)鍵詞優(yōu)化、網(wǎng)站設(shè)計公司品牌網(wǎng)站建設(shè)、網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)