所以我想说我有一个Python类:
class Something:
def __init__(self, a, b, c):
initialize_object_with_args()
def run(self):
do_something()
def result(self):
return result
现在我想要创建该类的多个对象(所有对象都是独立的 - 不需要在对象之间进行数据交换)并在具有多核CPU的单个PC上并行运行它们...唯一改变的是每次运行的输入参数(a,b,c)......
所以我需要这个:
results = []
[PARALLEL START]
obj = Something(a, b, c)
obj.run()
results.append(obj.results())
[PARALLEL END]
然后我可以评估结果!我看到多处理模块将是我需要的,但我不知道具体细节,也不知道它能做我需要的还是如何做?
快速编辑:我需要能够用Python做到这一点......没有外部模块......只是标准的Python安装......
答案 0 :(得分:0)
查看http://wiki.python.org/moin/ParallelProcessing,尤其是http://pypi.python.org/pypi/pprocess。
这个小型库可以完全按照您的要求进行操作:http://honeypot.net/yet-another-python-map
答案 1 :(得分:0)
它似乎与this
非常相似from multiprocessing import Pool
def func(*args):
obj = Something(*args)
obj.run()
return obj.results()
pool = Pool()
results = pool.map(func, ((1,2,3), (4,5,6)))