作为构建过程的一部分,我在build-server上使用了以下命令:
os.system ('signtool sign /a /t http://timestamp.verisign.com/scripts/timstamp.dll "%s\\*.exe"' % (dir) )此命令对指定目录中的每个可执行文件进行签名。有没有办法使用Python为每个可执行文件并行运行此命令?有没有类似Python的OpenMP?
发布于 2010-12-16 16:09:31
你可以使用线程。This tutorial展示了如何使用线程来做一些与你所要求的类似的事情。
发布于 2010-12-16 16:07:48
也许multiprocessing可以在这里帮上忙?
具体地说,multiprocessing.Pool.map()可能与您的需求相关。
发布于 2010-12-16 22:01:27
上面的答案是从Python方面处理事情的非常明智的方法,例如
from multiprocessing import Pool
import os
def processFile(x):
return os.system('ls '+x)
if __name__ == '__main__':
pool = Pool(processes=2)
files=['foo','foo.py','foo.cpp','foo.txt','foo.bar']
result = pool.map(processFile, files)
print 'Results are', result但是,如果您无论如何都在使用shell,那么您可能需要考虑在shell端使用Gnu Parallel,它像xargs一样运行,但是并行地执行各个任务,并具有控制可以同时运行多少作业的选项,等等。
https://stackoverflow.com/questions/4458560
复制相似问题