关于使用 flask-socketio 插件在使用flask run
启动,出现
ValueError: signal only works in main thread
异常的问题。如果非要flask run
启动,试试下面的方案:
首先更新Flask-SocketIO到3.2.0 Release版本以上。然后试试:
flask run --no-reload
切记一定要带 --no-reload
参数,本人测试已经成功。
参考资料:
- Flask apps not using Flask-SocketIO get exception/ValueError · Issue #817 · miguelgrinberg/Flask-SocketIO · GitHub
- Not working with debug mode on · Issue #508 · miguelgrinberg/Flask-SocketIO · GitHub
- Add --no-reload to Flask's original run command by jxltom · Pull Request #536 · miguelgrinberg/Flask-SocketIO · GitHub