LOL! (lols allowed here? or just not allowed as in #twisted?). Don't know why I used the word "thread" in there... I was just going to describe something I had made, then I remembered I had corrected it using a LoopingCall. David Jp Calderone wrote:
On Thu, 21 Jul 2005 12:49:21 -0300, David Guaraglia
wrote: Andrzej,
I've done something very similar using just one thread for the protocol. But I'm not really sure this is what you need. What I did was use a LoopingCall every 2 minutes that would call a method in my protocol's factory. Everytime I got a new connection (connectionMade event in the Protocol) I'd append the protocol to a list in the factory, and then I'd remove it when the protocol is closed.
So the sequence is:
1) add an empty list (connectionsList or whatever) to your factory 2) add "self.factory.connectionsList.append(self)" in connectionMade in your protocol 3) add "self.factory.connectionsList.remove(self)" in connectionLost in your protocol 4) add a method that sends your "keep alive" to every connection in connectionsList in your factory. (for x in self.connectionsList: x.sendKeepAlive()) 5) create a LoopingCall in your factory __init__.
Maybe it's not the best solution, but it worked for me.
Where's the thread? (Hint: not in the LoopingCall)
Jp
_______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python