概述
本问题已经有最佳答案,请猛点这里访问。
我需要一些方法来使用pool.map()中接受多个参数的函数。根据我的理解,pool.map()的目标函数只能有一个iterable作为参数,但是有没有其他参数也可以传入的方法?在这种情况下,我需要传递一些配置变量,比如锁(),并将信息记录到目标函数中。
我试过做一些研究,我认为我可以使用部分函数使它工作?但是我不完全理解这些是如何工作的。任何帮助都将不胜感激!下面是一个简单的例子,说明我想做什么:
def target(items, lock):
for item in items:
# Do cool stuff
if (... some condition here ...):
lock.acquire()
# Write to stdout or logfile, etc.
lock.release()
def main():
iterable = [1, 2, 3, 4, 5]
pool = multiprocessing.Pool()
pool.map(target(PASS PARAMS HERE), iterable)
pool.close()
pool.join()
这里讨论:stackoverflow.com/questions/5442910/…(我成功地使用了J.F.Sebastien的"star"方法)
请在使用多进程时使用try/finally子句,finally中包含close()和join(),以确保在发生错误时关闭进程。stackoverflow.co
最后
以上就是害怕棒棒糖为你收集整理的python中multiple函数_关于多处理:在Python中将多个参数传递给pool.map()函数的全部内容,希望文章能够帮你解决python中multiple函数_关于多处理:在Python中将多个参数传递给pool.map()函数所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复