并行化对成员函数的重复调用

时间:2018-03-09 08:23:01

标签: python multithreading parallel-processing

我正在尝试使用joblib并行调用成员函数:

import numpy as np
from joblib import Parallel, delayed

class C(object):

    def func_change(self, i):
        self.arr[i]=2*i           

    def __init__(self):            
        self.arr = np.array([1, 2, 3])            

if __name__ == "__main__":
    C_object = C()
    print(C_object.arr)
    Parallel(n_jobs=2)(delayed(C_object.func_change)(i) for i in range(2))
    print(C_object.arr)

此输出

[1 2 3]
[1 2 3]

因此它似乎无法奏效。我的班级需要采用不同的方法/设计才能实现这一目标吗?

0 个答案:

没有答案