我使用Twisted在Python中运行一个非常简单的服务器。当我尝试同时运行两个时,会发生以下异常:
twisted.internet.error.CannotListenError: Couldn't listen on 127.0.0.1:5050: [Errno 98] Address already in use.
这很有道理。我怎么能抓住这个例外?
如果现有服务器正在运行,我只想终止反应堆并关闭所有内容。否则,我得到异常,它只是无限期挂起,直到我杀死进程。
答案 0 :(得分:7)
您需要在Twisted术语中使用error handler callback,errBack
。您可以使用Deferred
方法将{1}添加到addErrback
。