我在concurrent.futures
中看到了两种指定超时的方法。
as_completed()
wait()
这两种方法都处理N个期货。
我想为每个未来指定一个单独的超时。
用例:
如何使用concurrent.futures
处理此问题?或者这个库不是正确的工具吗?
答案 0 :(得分:5)
如何实现自己的:
wait(dbfutures + httpfutures, timeout=0.5)
[fut.cancel() for fut in bdfutures if not fut.done()]
wait(httpfutures, timeout=0.7)
[fut.cancel() for fut in httpfutures if not fut.done()]
(或带睡眠/检查的while循环或等待短暂超时)