我有一个项目,使用扭曲。在twisted.internet.protocol.ClientFactory的子类中,有clientConnectionLost/clientConnectionFailed方法。当数据交换发生错误时,此方法使用连接器和原因执行。我可以查看异常的类型和值。但是我没有找到关于如何抑制它的信息。处理后,它会升级为未处理错误。我不能创建一个全局的异常处理程序,我需要根据此上下文中的类型和值来处理异常(并重新连接等)。扭曲clientConnectionLost catch/supress异常
class MyProtocol(Protocol):
def connectionMade(self):
raise Exception('Connect error')
class Client(ClientFactory):
protocol = MyProtocol
def clientConnectionLost(self, connector, reason):
print reason.type, reason.value # show type and message, OK
reason.cleanFailure() # ???
reactor.connectTCP('127.0.0.1', 80, Client())
reactor.run()
# Unhandled Error
# Traceback (most recent call last): ...............
任何想法?
http://sscce.org/ –
你真的不理解这段代码,或者只是想看看smarty?好吧,我写的自成一体的例子。 – Victor
您的问题之前并不清楚。您的编辑似乎已澄清它。谢谢。 –