【发布时间】:2016-01-18 13:48:07
【问题描述】:
我想在课堂上进行多处理。似乎只有 pathos.multiprocessing 能够帮助我。但是,当我实现它时,它无法加载我在 main 函数中使用的包。
from pathos.multiprocessing import ProcessingPool;
import time
import sys;
import datetime
class tester:
def __init__(self):
self.pool=ProcessingPool(2);
def func(self,msg):
print (str(datetime.datetime.now()));
for i in xrange(1):
print msg
sys.stdout.flush();
time.sleep(2)
#----------------------------------------------------------------------
def worker(self):
""""""
pool=self.pool
for i in xrange(10):
msg = "hello %d" %(i)
pool.map(self.func,[i])
pool.close()
pool.join()
time.sleep(40)
if __name__ == "__main__":
print datetime.datetime.now();
t=tester()
t.worker()
time.sleep(60);
print "Sub-process(es) done."
错误是未定义全局名称“日期时间”。但它适用于主要功能! 我的系统是Win7。
【问题讨论】:
-
为什么不使用标准的
multiprocessing库? -
多处理不能用于调用类函数
-
@RunpengChen 我和你有同样的问题。你最终是如何解决你的问题的? stackoverflow.com/questions/54693080/…
标签: python-2.7 multiprocessing pathos