加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Python > 正文

python – 为什么Twisted Manhole ConnectionDone是一个错误?

发布时间:2020-12-20 11:25:09 所属栏目:Python 来源:网络整理
导读:我正在使用扭曲的沙井(https:// github.com/HoverHell/pyaux/blob/master/pyaux/runlib.py#L126),我还将Twisted捕获的错误发送到 python日志记录(https:// github. COM / HoverHell / pyaux /斑点/主/ pyaux / twisted_aux.py#L9). 但是,结果,日志会出现Con
我正在使用扭曲的沙井(https:// github.com/HoverHell/pyaux/blob/master/pyaux/runlib.py#L126),我还将Twisted捕获的错误发送到 python日志记录(https:// github. COM / HoverHell / pyaux /斑点/主/ pyaux / twisted_aux.py#L9).

但是,结果,日志会出现ConnectionDone()错误,这不是一个非常有趣的错误.

什么是适当的改变,以避免得到这个(可能,其他一些)不完全错误?可能会过滤twisted.python.failure.Failure案件?从哪里来的ConnectionDone()甚至提出了,为什么?

解决方法

在连接关闭后,ConnectionDone()实例被赋予connectionLost()回调.当客户端决定关闭连接时,您应该看到这一点.
你绝对不想过滤失败.您可以将故障视为异常的“异步类比”.通常要做的事情,而不是看到某种例外是这样的:

from twisted.internet import error

...

def connectionLost(self,reason):
    if reason.check(error.ConnectionDone):
        # this is normal,ignore this
        pass
    else:
        # do whatever you have been doing for logging

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读