新聞中心
說明

為大田等地區(qū)用戶提供了全套網(wǎng)頁(yè)設(shè)計(jì)制作服務(wù),及大田網(wǎng)站建設(shè)行業(yè)解決方案。主營(yíng)業(yè)務(wù)為成都網(wǎng)站建設(shè)、網(wǎng)站制作、大田網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠(chéng)的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長(zhǎng)期合作。這樣,我們也可以走得更遠(yuǎn)!
1、tasks用于并發(fā)調(diào)度協(xié)程,通過asyncio.create_task(協(xié)程對(duì)象)創(chuàng)建Task對(duì)象。
2、使協(xié)程能夠加入事件循環(huán),等待調(diào)度執(zhí)行。
除使用asyncio.create_task()函數(shù)外,還可使用低級(jí)loop.create_task()或ensure_future()函數(shù)。推薦使用手動(dòng)實(shí)例Task對(duì)象。
使用注意
python3.7中添加到asyncio.create_task函數(shù)。在Python3.7之前,可以使用低級(jí)asyncio.ensure_future函數(shù)。
實(shí)例
import asyncio
async def func():
print(1)
await asyncio.sleep(2)
print(2)
return "返回值"
async def main():
print("main開始")
# 創(chuàng)建協(xié)程,將協(xié)程封裝到一個(gè)Task對(duì)象中并立即添加到事件循環(huán)的任務(wù)列表中,等待事件循環(huán)去執(zhí)行(默認(rèn)是就緒狀態(tài))。
task1 = asyncio.create_task(func())
# 創(chuàng)建協(xié)程,將協(xié)程封裝到一個(gè)Task對(duì)象中并立即添加到事件循環(huán)的任務(wù)列表中,等待事件循環(huán)去執(zhí)行(默認(rèn)是就緒狀態(tài))。
task2 = asyncio.create_task(func())
print("main結(jié)束")
# 當(dāng)執(zhí)行某協(xié)程遇到IO操作時(shí),會(huì)自動(dòng)化切換執(zhí)行其他任務(wù)。
# 此處的await是等待相對(duì)應(yīng)的協(xié)程全都執(zhí)行完畢并獲取結(jié)果
ret1 = await task1
ret2 = await task2
print(ret1, ret2)
asyncio.run(main())以上就是python Task在協(xié)程的調(diào)用,希望對(duì)大家有所幫助。更多Python學(xué)習(xí)指路:創(chuàng)新互聯(lián)Python教程
本文教程操作環(huán)境:windows7系統(tǒng)、Python 3.9.1,DELL G3電腦。
分享文章:創(chuàng)新互聯(lián)Python教程:pythonTask如何在協(xié)程調(diào)用
標(biāo)題路徑:http://m.5511xx.com/article/cojijcd.html


咨詢
建站咨詢
