【发布时间】:2015-08-12 17:17:54
【问题描述】:
我像这样运行一个多进程脚本:
def intersterer(i):
somestuff
return x
if __name__ == '__main__':
pool = Pool()
list = pool.map(intersterer, itertools.combinations(xrange(great_number), 2))
我想知道如何查看工作的进度。我环顾了一个共享柜台,但它很丑,而且似乎没有说实话。 (可能里面有错误的代码) 有人可以用一种很棒的 Python 方式帮助我吗?
编辑: 就像我的例子一样,我想将所有结果存储在一个列表中,问题的答案:Show the progress of a Python multiprocessing pool map call? 对此没有帮助。谢谢
EDIT2:
这是解决方法。感谢每一位帮助者!
def intersterer(i):
somestuff
return x
numtot = binomial(number,2)
pool = Pool()
list=[]
tpsb=time.time()
for i in pool.imap_unordered(intersterer, itertools.combinations(xrange(number),2)):
list.append(i); print "{:3.2f}%, approximatly {:3.2f} seconds left \r".format(100.*len(list)/numtot, (time.time()-tpsb)*100./(100.*len(list)/numtot)-(time.time()-tpsb)),
【问题讨论】:
-
this 有帮助吗?
-
就像我的编辑说的那样,它对我没有多大帮助,但我的答案是有根据的!谢谢