gpt4 book ai didi

Python 多处理重新启动脚本?

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

我在 Python 中使用多重处理。以下是我的代码演示:

在函数 main 中:

from multiprocessing import Process

def __name__ == "__main__":
print "Main program starts here."

SOME CODE....

process_1 = Process(target=proc1, args = (arg1, arg2))
process_2 = Process(target=proc2, args = (arg3, arg4))

process_1.start()
process_2.start()

process_1.join()
process_2.join()

在函数 proc1proc2 中:

def proc1(arg1, arg2):
print "Proc1 starts from here."

SOME CODE....

所以我希望看到的输出是:

Main program starts here.

Proc1 starts from here.

Proc2 starts from here.

然而,我得到的是:

Main program starts here.

Main program starts here.

Main program starts here.

似乎 proc1proc2 都启动了 main 而不是 procs。

我可以知道我的代码有什么问题吗?

非常感谢。

最佳答案

def __name__ == "__main__":

应该是:

if __name__ == "__main__":

但是如果我用 python 2.7 执行你的代码,我会得到:

    def __name__ == "__main__":
^
SyntaxError: invalid syntax

如果我将 def 重命名为 if:

Main program starts here.
proc2
proc1

所以我想知道你是如何让你的代码工作的(你可能在粘贴之前修改了它)

关于Python 多处理重新启动脚本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27320092/

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