我正在尝试使用模块“Parallel Python”(pp)来分发“大”工具(gdal2tiles,如果你听说过的话)的计算。我正在运行一些简单的测试来熟悉 pp,但我遇到了一个我无法解释的问题。
这是代码:
import pp
def fun():
import subprocess
p = subprocess.Popen("dir", shell=True)
p.wait()
ppservers=("*",)
job_server=pp.Server(ncpus=0,ppservers=ppservers)
if __name__=='__main__':
FORMAT = u'%(asctime)-15s %(message)s'
import logging
logging.basicConfig( level=logging.DEBUG, format=FORMAT )
f = job_server.submit(fun)
r=f()
job_server.print_stats()
subprocess.Popen 中的“dir”只是在这里传递一个有效的 shell 命令。
在我的 ppserver 上,我运行“ppserver.py -a -d”。在客户端的控制台上,任务似乎永远不会结束,而它确实在服务器上结束。
在进一步进行测试之前,我想了解这里发生了什么,因为我的最终程序要复杂得多。
谢谢!