Lás*_*zló 23 python runtime-error multiprocessing scikit-learn anaconda
我对使用freeze_support()而感到困惑multiprocessing,Runtime Error没有它就得到了.我只运行脚本,而不是定义函数或模块.我还能用吗?或者我导入的软件包应该使用它吗?
这是文档.
请注意,具体问题是关于scikit-learn调用GridSearchCV哪些尝试并行生成进程.我不确定我的脚本是否需要为此冻结,或者是一些被调用的代码(来自Anaconda发行版).如果详细信息与此问题相关,请转到更具体的问题.
dan*_*ano 47
在Windows上,您的所有multiprocessing使用代码都必须受到保护if __name__ == "__main__":
因此,为了安全起见,我会将当前所有代码放在脚本的顶层main()函数中,然后在顶层执行此操作:
if __name__ == "__main__":
main()
Run Code Online (Sandbox Code Playgroud)
请参阅此处的 "主要模块的安全导入"子部分,以解释为何需要这样做.你可能根本不需要打电话freeze_support,但包含它不会伤害任何东西.
请注意,if __name__ == "__main__"无论如何最好使用guard作为脚本,因此如果您import在将来某个时候发现需要将脚本放入另一个脚本中,则不会意外执行代码.
| 归档时间: |
|
| 查看次数: |
26362 次 |
| 最近记录: |