当方法本身已经使用多重处理时,Python如何调用使用多重处理的类方法?

时间:2018-12-26 10:23:03

标签: python multiprocessing

假设存在一个类Bar,该类具有方法run,它使用foo调用自己的方法multiprocessing。为避免发生pickle错误,它必须从pool中删除self.__dict__

通常,用户可以像功能Bar.run中一样调用test1。它工作正常。

但是,当用户有大量数据时,他可能想像函数Bar.run中那样以多处理方式调用test2,并且会出现错误: AttributeError: 'Bar' object has no attribute 'pool'。发生此错误是因为已经在pool的{​​{1}}调用期间删除了pool.map

在现实世界中,bar.runBar.foo都需要很长时间才能执行。那么有没有办法并行调用Bar.run

Bar.run

0 个答案:

没有答案