将numpy数组作为参数传递给python multiprocessing Process时出现BrokenPipeError

时间:2019-02-20 20:58:53

标签: python python-multiprocessing broken-pipe

我尝试执行Python多处理,其中Process中的参数之一是导入函数(一个numpy数组)的输出结果。但是,这给出了BrokenPipeError。但是,如果我直接在主代码中计算数组并​​将其作为参数传递,则Process运行正常。 因此,代码的形式为:

from multiprocessing import Process
import personalmodule

X = personalmodule.getdata()

def someotherfunction(X):
    return X

if __name__ == '__main__':
    process = Process(target=someotherfunction, arg(X,))
    process.start()

如果直接在此文件中获得X,则此程序可以正常工作。我已经尝试过通过X2 = np.copy(X)之类的事情,但是似乎没有任何效果。

0 个答案:

没有答案