我正在使用一个程序,并行执行与dispy。 我使用dispy来创建任务,然后将其分发到不同的CPU来执行。导入python作业模块
我有standar图书馆,并由我图书馆(数据和连接)开发。
的代码是这样的:
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()
`
的问题是,我需要的,如果用数据,并在主连接的工作DEF它工作一切正常,也如果我叫计算为一个函数,而不是使用dispy库。 但是,当我这样工作,并在计算过程中调用数据函数时,它会抛出异常,数据未定义并且打印异常无。
任何帮助?文档建议使用设置,但我无法弄清楚它是如何工作的。
你可以添加堆栈跟踪你正在得到的例外吗?在全局 文件 “dispynode.py”,线路186,在_dispy_job_func __dispy_job_name)() 文件 “”,1号线,在 文件 “”,行: –
saq7
'异常=回溯(最近通话最后一个) 47,在计算 NameError:未定义全局名称'数据' – A77ak