SleekXMPP和Geven

2024-09-29 21:45:11 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在Python中使用XMPP,我希望能够生成新的进程来监听XMPP上的消息。我想我将使用gevent生成新的进程来监听消息。在

我只是试图将消息写入一个简单的SQLite3数据库,以跟踪正在发生的事情,但是消息只为一个用户写入数据库。我肯定我不明白gevent是怎么工作的。在

这是密码。https://gist.github.com/simonbowen/6756511


Tags: 用户httpsgithubcom数据库消息密码进程
1条回答
网友
1楼 · 发布于 2024-09-29 21:45:11

你需要激活gevent monkey补丁。Python会用类似的代码 SleekXMPP库“非阻塞”,您将能够处理多个greenlet 平行的。只需在gevent import之后添加以下行:

from gevent import monkey; monkey.patch_all()

然而,在我看来,对sqlite3的调用仍然会阻塞,因为我认为 它是一个用C语言编写的Python扩展模块。 如果你想要一个完整的gevent友好的实现,你必须 在单独的线程中调用sqlite3,例如,使用gevent threadpool。在

相关问题 更多 >

    热门问题