我正在使用 gevent 来处理长轮询请求。这些请求将一直等待,直到 AsyncResult 的 .get 方法返回。然后它将结果发送回长轮询客户端。
问题是客户端连接有时会在 AsyncResult 触发之前超时。如果发生这种情况,当我最终尝试发回响应时会出现异常。这是有道理的,因为连接不再处于活动状态。我还有一个 AsyncResult 对象,如果连接不再打开,我应该完全停止。
我正在使用 pywsgi 来处理长轮询的宁静请求。有没有办法在 pywsgi 处理程序中检测到连接关闭,但作为一个事件,因为我的 greenlet 将阻塞 AsyncResult。
任何帮助将不胜感激。谢谢