asyncioのエラー処理
Q&A
Closed
解決したいこと
asyncioで繰り返し動作をしている二つのタスクのうち片方でエラーが出たとき、もう一つのタスクも止まってほしいのですが、何か方法あるでしょうか?よろしくお願いいたします
該当するソースコード
import asyncio
async def func1():
while True:
await asyncio.sleep(9)
print(datetime.datetime.now().replace(microsecond=0),'func1')
async def func2():
i=5
while True:
await asyncio.sleep(5)
print(10/i)
i=i-1
print(datetime.datetime.now().replace(microsecond=0),'func2')
async def main():
task1=asyncio.create_task(func1())
task2=asyncio.create_task(func2())
await asyncio.gather(task1,task2)
await main()
0