我目前正在阅读一本关于Twisted的书,代码示例似乎任意使用protocol.Factory
和protocol.ServerFactory/ClientFactory
。有什么区别,什么时候应该使用每个选项?
以下是使用protocol.ServerFactory
的示例:
class HTTPEchoFactory(protocol.ServerFactory):
def buildProtocol(self, addr):
return HTTPEchoProtocol()
但是,他们在这里使用protocol.Factory:
class RshFactory(Factory):
def __init__(self):
self.connected_clients = {}
def buildProtocol(self, addr):
return RshServer(self, addr)
答案 0 :(得分:2)
ClientFactory
和ServerFactory
主要是历史事故,最终应该删除。如果您正在使用endpoints(并且您应该这样,在过去3年中使用扭曲编写的任何代码应该),您应该使用Factory
并忽略它们