我想执行一个文件: python main.py->创建字典= {'var':'hello'}。
然后,我想在另一个执行文件的文件中使用该dict实例: python client.py->我要打印{'var':'hello'}
我已经看到一些示例,其中两个进程使用Manager()共享数据。在示例中,main.py和client.py都在单个文件上启动,然后将两个进程都加入,等等。我不想这样做。
Python 3.6.8
我尝试过:
main.py:
from multiprocessing import Process, Manager
def f(d):
d['var'] = 'hello'
print (d)
if __name__ == '__main__':
manager = Manager()
d = manager.dict()
d['var'] = None
p = Process(target=f,args=(d,)) # say to 'f', in which 'd' it should append
p.start()
p.join()
input()
client.py:
from multiprocessing import Process, Manager
def f(d):
print (d)
if __name__ == '__main__':
manager = Manager()
d = manager.dict()
print(d)
p = Process(target=f,args=(d,)) # say to 'f', in which 'd' it should append
p.start()
p.join()
input()
预期结果 main.py => {'var','hello'} cient.py => {'var','hello'}
实际结果 main.py => {'var','hello'} cient.py => {}