簡體   English   中英

使用python asyncio的多個任務

[英]multiple tasks using python asyncio

我有以下代碼:

import asyncio

async def test_1():      
    res1 = await foo1()
    return res1

async def test_2():      
    res2 = await foo2()
    return res2

if __name__ == '__main__':
    print(asyncio.get_event_loop().run_until_complete([test_1, test_2]))

但是最后一次調用.run_until_complete()是行不通的。 如何使用.run_until_complete()對多個任務執行異步調用?

我正在尋找例子,我找到了答案。 我們可以運行一個簡單的任務,收集多個協同程序:

import asyncio    

async def test_1(dummy):
  res1 = await foo1()
  return res1

async def test_2(dummy):
  res2 = await foo2()
  return res2

async def multiple_tasks(dummy):
  input_coroutines = [test_1(dummy), test_2(dummy)]
  res = await asyncio.gather(*input_coroutines, return_exceptions=True)
  return res

if __name__ == '__main__':
  dummy = 0
  res1, res2 = asyncio.get_event_loop().run_until_complete(multiple_tasks(dummy))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM