Python多处理池在Linux和Windows之间有不同的行为。
当按工作人员的数量运行方法时,在Linux中它运行的是作为参数给定的特定函数的作用域上的进程,但是在Windows中,每个工作人员在父进程的范围内运行,并再次使用它不应该使用的代码。
例如:(只用于使其与我的代码类似)
from multiprocessing import Pool, Event
from flask import Flask
print(">>> This code running for every each worker")
app = Flask(__name__
在Linux消息文件中,我注意到进程14947报告了分段错误,但是我没有得到进程14947的核心转储,而是得到了14069.core(它生成的时间与分段错误被击中的时间相匹配)。
然后我使用gdb并发现:-
Program terminated with signal 11, Segmentation fault.
[New process 14947]
[New process 26131]
[New process 26130]
[New process 26129]
[New process 26128]
[New process 14945]
[New process 14842]
[