multiprocessing.freeze_support()

发布于 2021-01-29 18:15:33

为什么在“冻结”以生成Windows可执行文件时,多处理模块需要调用特定功能才能工作?

关注者
0
被浏览
46
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    原因是fork()在Windows上缺少(这并非完全正确)。因此,在Windows上,通过创建一个
    进程来 模拟 fork,在该
    进程中,正在子进程中运行的代码在Linux中运行。由于代码将在技术上不相关的流程中运行,因此必须先将其交付那里才能运行。它的交付方式是先对其进行酸洗,然后通过管道将其从原始流程发送到新流程。另外,此新进程还必须通过传递--multiprocessing- fork命令行参数来通知它必须运行管道传递的代码。如果你看一看实现freeze_support()函数的任务是检查正在运行的进程是否应该运行通过管道传递的代码。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看