我正在使用一个与 dispy 并行执行的程序。我正在使用 dispy 创建任务,然后将其分发到不同的 CPU 执行。
我有标准库并由我开发的库(数据和连接)。
代码是这样的:
import dispy
import sys
import data
import connection
def compute(num):
#some code that call data and connection methods, and generate a solution
return solution
def main():
cluster = dispy.JobCluster(compute)
jobs = []
for i in range(10)
job = cluster.submit(i)
job.id = i # optionally associate an ID to job (if needed later)
jobs.append(job)
for job in jobs:
job()
print "Result = " + str(job.result)
print "Exception = " + str(job.exception)
if __name__ == "__main__":
main()
`
问题是我需要在主定义中使用数据和连接时它工作正常,如果我将计算调用为函数而不是使用 dispy 库。但是当我这样工作并在计算过程中调用一个数据函数时,它会抛出异常,即数据未定义并打印异常无。
有什么帮助吗?该文档建议使用设置,但我无法弄清楚它是如何工作的。