跳至内容
MNBVC-Wiki
用户工具
登录
站点工具
搜索
工具
显示页面
过去修订
反向链接
最近更改
媒体管理器
网站地图
登录
>
最近更改
媒体管理器
网站地图
您的足迹:
踩坑记录:20230726python多进程卡主
本页面只读。您可以查看源文件,但不能更改它。如果您觉得这是系统错误,请联系管理员。
==== python多进程卡住 ==== === 背景 === 在数据清洗等环节,有三位同学独立编写的python多进程在生产环境执行时卡住。在研发环境无法复现。 具体卡主的地方可能是: File "/opt/conda/lib/python3.8/multiprocessing/pool.py", line 856, in next self._cond.wait(timeout) File "/opt/conda/lib/python3.8/threading.py", line 302, in wait waiter.acquire() === 经过 === 在仔细调查后发现原因可能是系统在制作python进程副本时,对锁的处理不好,数据量大时会增加问题的发生概率。这个问题将在python版本的3.12版本Warning出来警告使用者。在python的3.14版本被完全修复。 === 结果 === 在python的3.14版本前,MNBVC的单个清洗脚本都会写成单进程的模式。通过MNBVC的框架代码来调用各个py脚本实现多进程的能力。如果非要实现多进程,请参考[[https://pythonspeed.com/articles/python-multiprocessing/ | 详细问题说明]] 仔细研究修改多进程代码。
踩坑记录/20230726python多进程卡主.txt
· 最后更改: 2023/08/09 19:23 由
MNBVC项目组
页面工具
显示页面
过去修订
反向链接
回到顶部