gpt4 book ai didi

python - 在Python中同时运行两个函数

转载 作者:行者123 更新时间:2023-12-01 06:53:13 26 4
gpt4 key购买 nike

这是Python中多线程的简单代码。

p1 = multiprocessing.Process(target=f1, args=('f1')) 
p2 = multiprocessing.Process(target=f2, args=('f2'))

p1.start()
# starting process 2
p2.start()

# wait until process 1 is finished
p1.join()
# wait until process 2 is finished
p2.join()

但是运行代码后我收到以下错误:

BrokenPipeError: [Errno 32] Broken pipe

我搜索了 SO 和其他网站,常见的答案是包含以下代码片段:

from signal import signal, SIGPIPE, SIG_DFL
signal(SIGPIPE, SIG_DFL)

但是当我运行这个时,我收到以下错误:

ImportError: cannot import name 'SIGPIPE' from 'signal' (C:\Users\u65988\AppData\Local\Continuum\anaconda3\lib\signal.py)

我尝试检查所有解决方案,但没有一个有效!请帮我解决这个问题!

两个函数供引用:

def f1 (string):
print(string)

def f2 (string):
print(string)

最佳答案

在您想要运行的 main.py/script 中,您必须编写

if __name__ == "__main__":

start_process_1()

start_process_2()


join_process_1()

join_process_2()

这是一个特定于 Windows 平台的错误,如果函数调用被包装/放入 if__name__ == "__main__" 中,则可以相应解决。

关于python - 在Python中同时运行两个函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58913031/

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