Factory和ServerFactory / ClientFactory有什么区别?

时间:2015-06-30 14:01:33

标签: python twisted

我目前正在阅读一本关于Twisted的书,代码示例似乎任意使用protocol.Factoryprotocol.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)

1 个答案:

答案 0 :(得分:2)

ClientFactoryServerFactory主要是历史事故,最终应该删除。如果您正在使用endpoints(并且您应该这样,在​​过去3年中使用扭曲编写的任何代码应该),您应该使用Factory并忽略它们