gpt4 book ai didi

python - 简单的python多处理池脚本错误

转载 作者:太空宇宙 更新时间:2023-11-04 06:04:17 25 4
gpt4 key购买 nike

我试图让一个非常简单的多处理脚本工作,但我没能弄清楚我做错了什么。我在 win32 上使用 Python 2.7.5 64 位。我在看Python Multiprocessing help exit on condition寻求帮助。

样式一:

import multiprocessing

def doCalc(year):
return year*year

yearlist = [1,2,3,4]
print(yearlist)

pool = multiprocessing.Pool(4)

for i in yearlist:
pool.apply_async(doCalc, args=[i])

pool.close()
pool.join()

样式 2:

import multiprocessing

def doCalc(year):
return year*year

yearlist = [1,2,3,4]
print(yearlist)

pool = multiprocessing.Pool(4)

pool.map(doCalc, yearlist)

两个脚本都打印 [1,2,3,4] 然后什么都不做。感谢您的帮助。

最佳答案

在 Windows 上,您应该在if __name__ == "__main__"(doc1doc2)中运行多处理函数。所以,试试这个:

import multiprocessing

def doCalc(year):
return year*year

yearlist = [1,2,3,4]
print(yearlist)

if __name__ == '__main__':
pool = multiprocessing.Pool(4)
pool.map(doCalc, yearlist)

关于python - 简单的python多处理池脚本错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23141487/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com