Python 检索传递给已取消的协程/任务的参数

Python 检索传递给已取消的协程/任务的参数,python,python-3.x,python-asyncio,Python,Python 3.x,Python Asyncio,我正在尝试检索在超时过期后使用asyncio.wait运行的协程/任务的参数 例如: todo = [f(10), f(20), g(20), f(30)] done, pending = await asyncio.wait(todo, timeout=2.5) 如果在2.5秒后f(30)没有返回并被取消,我只认为它是 你知道我怎样才能得到这些ARG吗 一种简单的方法是在调用wait()之前将它们附加到任务: 这确实有效——谢谢你 todo = [] for arg in 10, 20, 2

我正在尝试检索在超时过期后使用
asyncio.wait
运行的协程/任务的参数

例如:

todo = [f(10), f(20), g(20), f(30)]
done, pending = await asyncio.wait(todo, timeout=2.5)
如果在2.5秒后f(30)没有返回并被取消,我只认为它是

你知道我怎样才能得到这些ARG吗

一种简单的方法是在调用
wait()
之前将它们附加到任务:


这确实有效——谢谢你
todo = []
for arg in 10, 20, 20, 30:
    task = asyncio.create_task(f(arg))
    task.f_arg = arg
    todo.append(task)
done, pending = await asyncio.wait(todo, timeout=2.5)
# creation arg available in `f_arg` regardless of whether the task
# is done or pending