python - 循环中的多处理,“池未运行”错误
问题描述
我正在尝试循环运行一些计算,每个计算都会创建、使用和关闭一个池。但是计算只运行一次,然后抛出一个错误:“Pool not running”。当然旧的没有运行,但是不应该创建新的吗?
下面是一个简化的例子,类似于我的代码。更奇怪的是,在我的实际代码计算中,在崩溃之前运行了 7 次,所以我真的很困惑是什么问题。任何建议表示赞赏!
from pathos.multiprocessing import ProcessingPool as Pool
def add_two(number):
return (number + 2)
def parallel_function(numbers):
pool = Pool(10)
result = pool.imap(add_two, numbers)
pool.close()
pool.join()
return(result)
sets=[
[1, 2, 3],
[2, 3, 4],
[3, 4, 5]
]
for one_set in sets:
x = parallel_function(one_set)
for i in x:
print(i)
解决方案
推荐阅读
- python - 使用 selenium webdriver 获取 python 中文本框的 aria-invalid 的值
- node.js - Docker撰写未与上传文件同步的外部卷
- nginx - Nginx - 位置指令中的参数数量无效 - 正则表达式捕获带有空格的组
- react-native - React native:Ios 上的错误,但在 android 上没有
- nim-lang - Nim 是否支持自动投射?
- java - 使用未在数据集中提交的 SPARQL 插入数据 Jena ARQ
- wpf - 在.Net Core中添加值后如何刷新WPF数据网格
- wordpress - 如何在跨域(iframe)和同源场景中登录wordpress?
- wordpress - 条纹 Wordpress 发票
- cygwin - 我想在 Cygwin64 上构建 cgreen