Python 多个包共同使用
multiprocessing
模块时可能报错context has already been set
, 本文记录原因和解决方案。
问题复现 {#问题复现}
- 当
multiprocessing
模块被第二次配置 start_method 时会报错
- 或者在 get_start_method 后配置 start_method 也会报错:
- 错误信息:
问题原因 {#问题原因}
multiprocessing
模块的 start_method 被锁定后再次配置则会报错- 锁定条件包括
- 配置 start_method: 调用
set_start_method
方法 - 查看 start_method: 调用
get_start_method
方法
- 配置 start_method: 调用
解决方案 {#解决方案}
- 在配置 start_method 时配置参数
force=True
参考资料 {#参考资料}
- https://github.com/pytorch/pytorch/issues/3492
- https://www.icode9.com/content-4-859817.html
- https://www.jianshu.com/p/2a56598e73b9
文章链接:
https://www.zywvvd.com/notes/coding/python/python-multiprocess-context-err/multiprocess-context-err/