赞
踩
我有一个python脚本,单独运行时效果很好.它基于硬编码的输入目录,扫描所有.mdb文件并将其放入列表中,然后在for循环中遍历它们.每次迭代都涉及多个表限制,连接,查询等.
唯一的问题..在输入数据集上运行大约需要36个小时,而这个脚本只会在这个实例中用于此数据集,我想提高性能,因为我经常编辑字段选择,结果包括,加入方法等我想说它需要很长时间,因为我的脚本效率低下,但任何低效率都会很小,因为几乎所有处理时间都专用于地理处理器对象.
我在主脚本中的所有相关内容是:
indir = "D:\\basil\\input"
mdblist = createDeepMdbList(indir)
for infile in mdblist:
processMdb(infile)
它在顺序执行时也能完美执行.
我尝试过使用Parallel Python:
ppservers = ()
job_server = pp.Server(ppservers=ppservers)
inputs = tuple(mdblist)
functions = (preparePointLayer, prepareInterTable, jointInterToPoint,\
prepareDataTable, exportElemTables, joinDatatoPoint, exportToShapefile)
modules = ("sys", "os", "arcgisscripting", "string", "time")
fn = pp.Template(job_server, processMdb, functions, modules)
jobs = [(input, fn.submit(input)) for inp
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。