Python 将一个简单的计算并行化
假设我有一个简单的类和其中的一些对象:Python 将一个简单的计算并行化,python,parallel-processing,Python,Parallel Processing,假设我有一个简单的类和其中的一些对象: class Myclass: def __init__(self,a): self.a = a def square(self): self.a = self.a**2 list_of_objects = [Myclass(x) for x in range(10)] 如何计算: for obj in list_of_objects: obj.square() 以类似的方式 当然,我的类要复
class Myclass:
def __init__(self,a):
self.a = a
def square(self):
self.a = self.a**2
list_of_objects = [Myclass(x) for x in range(10)]
如何计算:
for obj in list_of_objects:
obj.square()
以类似的方式
当然,我的类要复杂得多,但语法应该是相同的。尝试查看Python的多处理模块。你可以这样做:
import multiprocessing
procs = []
for obj in list_of_objects:
proc = multiprocessing.Process(target = obj.square)
procs.append(proc)
proc.start()
for proc in procs:
proc.join()
尽管如此,在这个简单的示例中,由于设置过程所涉及的开销,使用多处理要慢一些。在本例中,当我对其计时时,只进行序列化会更快。因此,我会尝试对更复杂的代码进行计时,以确保它值得开销。这正是我在文档中需要的条目;谢谢