【发布时间】:2020-08-06 15:27:19
【问题描述】:
我正在使用TreadPoolExecutor 来运行异步任务。我想知道是否有一种方法可以列出需要完成的期货,而无需手动跟踪它们。 Python 文档在该主题上有些稀疏。
【问题讨论】:
标签: python-3.x python-multithreading concurrent.futures
我正在使用TreadPoolExecutor 来运行异步任务。我想知道是否有一种方法可以列出需要完成的期货,而无需手动跟踪它们。 Python 文档在该主题上有些稀疏。
【问题讨论】:
标签: python-3.x python-multithreading concurrent.futures
遍历并发期货的code,有两个元素可能有用:
_threads_queues1 持有一个包含所有队列信息的WeakKeyDictionary,如果定义了不同的执行器,这很有用。
关于执行器本身,队列被保存为_work_queue2。因此,要了解等待在特定执行程序上运行的任务数量,您可以这样做:
executor._work_queue.qsize()
只要记住 qsize 的 limitations。
【讨论】: