python - 如何在主进程中设置的 Python 多进程中获取全局数据?
问题描述
主文件
import multiprocessing.pool as Pool
from test import set_data, get_multiprocessing
if __name__ == '__main__':
data_list = ['data1', 'data2', 'data3']
set_data(data_list)
res = get_multiprocessing(2)
print(res)
测试.py
import time
import multiprocessing
_t = None
def set_data(t):
time.sleep(1)
global _t
_t = t
def get_data(idx):
return _t[idx]
def get_multiprocessing(num_threads):
pool = multiprocessing.Pool(processes=num_threads)
res = pool.map(get_data, range(1))
pool.close()
return [r for r in res]
这里出现了一个错误
Traceback(最近一次调用最后一次):TypeError:'NoneType'对象不可下标
那么在我在主进程中设置全局数据后,是否有办法获取全局数据?
解决方案
推荐阅读
- jquery - 为单击的元素获取精确的 DOM 树
- go - 从 emersion/go-imap 获取原始消息
- c++ - 我可以 memcpy 对象数据,它在 C++11 中具有标准布局兼容类吗?
- python - Python 和 Tkinter:类和实例创建错误
- javascript - 如何在react-native中显示从另一个js文件到当前文件的模式?
- angular - Angular 6如何获取两个位置AGM之间的距离
- c# - 打开本地pdf文件时,Wpf WebView显示空白窗口
- javascript - 类型“T”上不存在属性 - 一般问题
- javascript - 使用 JSON 文件作为 Javascript Web 应用程序的数据库
- import - 当名称从 HelloWorld 更改时,vuejs2 不导入