




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、Python并發(fā)課教室講師:Tuple時(shí)間:2018年1月教學(xué)監(jiān)督熱線 教學(xué)監(jiān)督熱線 010203階段一: 協(xié)程階段二: greenlet 協(xié)程 階段三: gevent 協(xié)程本節(jié)知識點(diǎn)階段一協(xié)程教學(xué)監(jiān)督熱線 協(xié)程 問題引入01020304問題一: 生成器與函數(shù)的區(qū)別?問題二: 協(xié)程與生成器的區(qū)別? 問題三: 協(xié)程算并發(fā)嘛?問題四: 協(xié)程的意義?預(yù)留如果我們考慮的是,同時(shí)服務(wù)多個(gè)客戶端,那么他不算!如果某一個(gè)協(xié)程被網(wǎng)絡(luò)阻塞了,那么整個(gè)線程(進(jìn)程)都被阻塞。協(xié)程本身不能避開阻塞。 任意時(shí)刻,只有一個(gè)協(xié)程在執(zhí)行。從執(zhí)行單元上來看,它的確屬于并發(fā)。階段二greenlet教學(xué)監(jiān)督熱線 greenlet
2、問題引入010203問題一: 什么是greenlet ?問題二: 如何使用 greenlet ?問題三: 為什么需要greenlet ?什么是 greenlet ?雖然CPython(標(biāo)準(zhǔn)Python)能夠通過生成器來實(shí)現(xiàn)協(xié)程, 但使用起來還并不是很方便。與此同時(shí),Python的一個(gè)衍生版 Stackless Python 實(shí)現(xiàn)了原生的協(xié)程,它更利于使用。于是,大家開始將 Stackless 中關(guān)于協(xié)程的代碼 單獨(dú)拿出來做成了CPython的擴(kuò)展包。這就是 greenlet 的由來,因此 greenlet 是底層實(shí)現(xiàn)了原生協(xié)程的 C擴(kuò)展庫。sudo pip3 install greenletg
3、reenlet 的基本使用greenlet 的價(jià)值價(jià)值一: 高性能的原生協(xié)程價(jià)值二: 語義更加明確的顯式切換價(jià)值三: 直接將函數(shù)包裝成協(xié)程,保持原有代碼風(fēng)格階段三gevent協(xié)程教學(xué)監(jiān)督熱線 gevent 問題引入010203問題一: 什么是 gevent ?問題二: gevent 的價(jià)值是什么 ?問題三: 如何使用 gevent ?什么是 gevent?sudo pip3 install gevent雖然,我們有了 基于 epoll 的回調(diào)式編程模式,但是卻難以使用。即使我們可以通過配合 生成器協(xié)程 進(jìn)行復(fù)雜的封裝,以簡化編程難度。但是仍然有一個(gè)大的問題: 封裝難度大,現(xiàn)有代碼幾乎完全要重寫
4、gevent,通過封裝了 libev(基于epoll) 和 greenlet 兩個(gè)庫。幫我們做好封裝,允許我們以類似于線程的方式使用協(xié)程。以至于我們幾乎不用重寫原來的代碼就能充分利用 epoll 和 協(xié)程 威力。gevent 的價(jià)值價(jià)值一: 使用基于 epoll 的 libev 來避開阻塞價(jià)值二: 使用基于 gevent 的 高效協(xié)程 來切換執(zhí)行遇到阻塞就切換到 另一個(gè)協(xié)程繼續(xù)執(zhí)行 !價(jià)值三: 只在遇到阻塞的時(shí)候切換, 沒有輪需的開銷,也沒有線程的開銷gevent 并發(fā)服務(wù)器階段四gevent 協(xié)程通信教學(xué)監(jiān)督熱線 gevent通信 問題引入0102問題一: 協(xié)程之間不是能通過switch通信嘛?問題二: 那為什么還要考慮通信問題?是的,由于 gevent 基于 greenlet,所以可以。因?yàn)?gevent 不需要我們使用手動(dòng)切換,而是遇到阻塞就切換,因此我們不會去使用swit
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年綠色物流運(yùn)輸項(xiàng)目全程監(jiān)理與咨詢服務(wù)合同
- 2025年智慧社區(qū)安全監(jiān)控設(shè)備采購與安裝工程承包合同
- 2025年智慧電網(wǎng)優(yōu)化升級項(xiàng)目EMC合同能源管理技術(shù)服務(wù)協(xié)議
- 2025解除勞動(dòng)合同證明書范本
- 2025年事業(yè)單位工勤技能-北京-北京放射技術(shù)員二級(技師)歷年參考題庫含答案解析(5套)
- 2025年事業(yè)單位工勤技能-北京-北京家禽飼養(yǎng)員五級(初級工)歷年參考題庫含答案解析(5套)
- 2025年農(nóng)村流轉(zhuǎn)土地承包合同樣本
- 2025年上海教師招聘考試(小學(xué)自然)歷年參考題庫含答案詳解(5卷)
- 市場海報(bào)設(shè)計(jì)試題及答案
- 2025年事業(yè)單位工勤技能-海南-海南印刷工三級(高級工)歷年參考題庫含答案解析(5套)
- 公司期貨交易及風(fēng)險(xiǎn)控制管理制度
- 維修單(標(biāo)準(zhǔn)模版)
- 市政工程占道施工方案
- GB/T 39965-2021節(jié)能量前評估計(jì)算方法
- GB/T 12243-2021彈簧直接載荷式安全閥
- GB/T 10066.4-2004電熱設(shè)備的試驗(yàn)方法第4部分:間接電阻爐
- PMC知識培訓(xùn)課件
- CJJ82-2019-園林綠化工程施工及驗(yàn)收規(guī)范
- 個(gè)人信息(模板)
- 會計(jì)師事務(wù)所驗(yàn)資工作底稿模板
- 婚育情況登記表
評論
0/150
提交評論