gpt4 book ai didi

python - 一个app能不能一小部分用gevent,还是整个app都要转过来?

转载 作者:太空宇宙 更新时间:2023-11-04 06:08:42 25 4
gpt4 key购买 nike

我有一个已经使用标准 python 线程构造(例如线程、队列、普通套接字和多处理)编写的大型应用程序。它有一个使用 Flask 实现的 Web 前端。

我想使用 websockets 实时公开应用程序状态的特定部分。我调查了Flask-Sockets它使用 gevent 和 gunicorn。

我的整个应用程序是否必须使用事件驱动模型,或者我可以保留其余的阻塞代码吗? (基本测试似乎同时具有阻塞代码和事件代码,但是否有任何注意事项,我是否必须重写大部分代码?)

我还没有找到答案谷歌搜索并检查了 gevent 和 gunicorn 主页和常见问题解答。我问是因为我知道 gevent 可以通过猴子修补现有库来实现。

最佳答案

不推荐。文档没有提到在 greenlet 上完成的工作和在普通线程上完成的工作之间的线程安全保证。似乎不支持此行为,并且在搜索您将遇到的问题时在线上也没有太多。

你会在两者的交互中看到奇怪的行为和错误。

例如,如果您从普通线程将某些内容放入 gevent.Queue 中,则 gevent 线程可能需要很多秒才能注意到其中有内容。

关于python - 一个app能不能一小部分用gevent,还是整个app都要转过来?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20199242/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com