0
複数の子プロセスを生成するクラスを作成しましたが、親プロセスのオブジェクトの一部を複数の子プロセスにコピーしたくありません。たとえば、以下のクラスxのproc1とproc2は、親の変数 'a'と 'b'が開始されたとき(つまりproc1.start()とproc2.start())をコピーしました。しかし、これらのプロセスでは使用されないため、「a」はコピーしたくありません。私のプログラムでは、親プロセスでのみ動作する変数がたくさんあります。それらの一部は非常に大きな辞書またはパンダのデータフレームです。コピーされないようにする方法はありますか?Pythonマルチプロセッシングでの親の所有オブジェクト
class x:
def __init__(self):
self.b = 20
self.a = 10
proc1 = mp.Process(target=self.func1)
proc2 = mp.Process(target=self.func2)
proc1.start()
proc2.start()
# Main process is doing something here
proc1.join()
proc2.join()
def func1(self):
time.sleep(10)
print("Process 1:",self.b)
def func2(self):
self.b = 15
print("Process 2:",self.b)
if __name__ == '__main__':
y = x()