asyncio.run()启动之后如何停止

新手上路,请多包涵

如下伪代码

import aiohttp
import asyncio

async def fetch(session, url):
    async with session.get(url, headers=headers) as resp:
        text = await resp.text()
        这里判断拿到自己想要的东西了,
        该如何等当前还执行的task完成之后就停止,不再执行其他task呢


async def main():
        async with aiohttp.ClientSession(connector=tc) as session:
            tasks = []
            for url in url_list:
                task = fetch(session, url)
                tasks.apped(task)
            await asyncio.wait(tasks)

if __name__ == '__main__':
    asyncio.run(main())
阅读 3k
1 个回答

看代码这是一个web服务吧,def fetch异步处理请求,在得到想要的请求后就不处理了??那不就是请求告诉服务你该退出了? 那可以sys.exit() 你这样很奇葩

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题