python - 使用 Python 的 multiprocessing.Pool 和 map_asynch,如何获取有关工作人员的信息?

标签 python multiprocessing threadpool

在下面的程序中,我如何定期检查:

  • 尚未开始的任务数
  • 当前工作的 worker 数
  • 已完成的任务数
  • 他们的状态(如果他们超时)

代码是:

from multiprocessing import Pool
import time

def f(x):
    time.sleep(x)
    return x*x

if __name__ == '__main__':
    pool = Pool(processes=4)              # start 4 worker processes

    ar = pool.map_async(f, range(10))          # prints "[0, 1, 4,..., 81]"
    pool.close()
    pool.join()
    ar.wait()
    print ar.get()

最佳答案

这是你想要的吗?

 ar._number_left 

关于python - 使用 Python 的 multiprocessing.Pool 和 map_asynch,如何获取有关工作人员的信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16966514/

相关文章:

python - 无法使用 python 将参数传递给 perl 脚本

Python cronjob 不会运行

python - 如何在 Python 中循环遍历 JSON

python - multiprocessing.Queue 中的 ctx 参数

python - python中大数据文件的并发i/o和处理

java - 如何同步文件明智的文件编写器对象?

python - 如何将格式错误的字符串转换为字典?

python - 类型错误 : AutoProxy object is not iterable - multiprocessing

java - 如果任何包占用大量时间,则使线程超时

c++ - pthread_cond_wait 和 pthread_mutex_lock 没有按预期工作