不懂關(guān)于Python中的asyncio庫-asyncio簡介與關(guān)鍵字?其實(shí)想解決這個(gè)問題也不難,下面讓小編帶著大家一起學(xué)習(xí)怎么去解決,希望大家閱讀完這篇文章后大所收獲。
創(chuàng)新互聯(lián)專注于中大型企業(yè)的網(wǎng)站制作、成都做網(wǎng)站和網(wǎng)站改版、網(wǎng)站營銷服務(wù),追求商業(yè)策劃與數(shù)據(jù)分析、創(chuàng)意藝術(shù)與技術(shù)開發(fā)的融合,累計(jì)客戶近千家,服務(wù)滿意度達(dá)97%。幫助廣大客戶順利對接上互聯(lián)網(wǎng)浪潮,準(zhǔn)確優(yōu)選出符合自己需要的互聯(lián)網(wǎng)運(yùn)用,我們將一直專注成都品牌網(wǎng)站建設(shè)和互聯(lián)網(wǎng)程序開發(fā),在前進(jìn)的路上,與客戶一起成長!
官網(wǎng)非常推薦的一個(gè)實(shí)現(xiàn)高并發(fā)的一個(gè)模塊是asyncio,在網(wǎng)絡(luò)的高響應(yīng)、高請求的場景下,高并發(fā)的實(shí)現(xiàn)越來越重要,python也是在python 3.4中引入了協(xié)程的概念,現(xiàn)在來好好學(xué)習(xí)下asyncio的原理和使用。
asyncio 是干什么的?
異步網(wǎng)絡(luò)操作
并發(fā)
協(xié)程
python3.0時(shí)代,標(biāo)準(zhǔn)庫里的異步網(wǎng)絡(luò)模塊:select(非常底層) python3.0時(shí)代,第三方異步網(wǎng)絡(luò)庫:Tornado python3.4時(shí)代,asyncio:支持TCP,子進(jìn)程
現(xiàn)在的asyncio,有了很多的模塊已經(jīng)在支持:aiohttp,aioDNS,aioredis等等 https://github.com/aio-libs 這里列出了已經(jīng)支持的內(nèi)容,并在持續(xù)更新
當(dāng)然到目前為止實(shí)現(xiàn)協(xié)程的不僅僅只有asyncio,tornado和gevent都實(shí)現(xiàn)了類似功能
關(guān)于asyncio的一些關(guān)鍵字的說明:
event_loop 事件循環(huán):程序開啟一個(gè)無限循環(huán),把一些函數(shù)注冊到事件循環(huán)上,當(dāng)滿足事件發(fā)生的時(shí)候,調(diào)用相應(yīng)的協(xié)程函數(shù)
coroutine 協(xié)程:協(xié)程對象,指一個(gè)使用async關(guān)鍵字定義的函數(shù),它的調(diào)用不會(huì)立即執(zhí)行函數(shù),而是會(huì)返回一個(gè)協(xié)程對象。協(xié)程對象需要注冊到事件循環(huán),由事件循環(huán)調(diào)用。
task 任務(wù):一個(gè)協(xié)程對象就是一個(gè)原生可以掛起的函數(shù),任務(wù)則是對協(xié)程進(jìn)一步封裝,其中包含了任務(wù)的各種狀態(tài)
future: 代表將來執(zhí)行或沒有執(zhí)行的任務(wù)的結(jié)果。它和task上沒有本質(zhì)上的區(qū)別
async/await 關(guān)鍵字:python3.5用于定義協(xié)程的關(guān)鍵字,async定義一個(gè)協(xié)程,await用于掛起阻塞的異步調(diào)用接口。
看了上面這些關(guān)鍵字,你可能扭頭就走了,其實(shí)一開始了解和研究asyncio這個(gè)模塊有種抵觸,自己也不知道為啥,這也導(dǎo)致很長一段時(shí)間,這個(gè)模塊自己也基本就沒有關(guān)注和使用,但是隨著工作上用python遇到各種性能問題的時(shí)候,自己告訴自己還是要好好學(xué)習(xí)學(xué)習(xí)這個(gè)模塊。
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享關(guān)于Python中的asyncio庫-asyncio簡介與關(guān)鍵字內(nèi)容對大家有幫助,同時(shí)也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,遇到問題就找創(chuàng)新互聯(lián),詳細(xì)的解決方法等著你來學(xué)習(xí)!
網(wǎng)站名稱:關(guān)于Python中的asyncio庫-asyncio簡介與關(guān)鍵字
當(dāng)前URL:http://www.rwnh.cn/article34/pgchse.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、品牌網(wǎng)站設(shè)計(jì)、網(wǎng)站改版、網(wǎng)站建設(shè)、網(wǎng)站導(dǎo)航、移動(dòng)網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)