[Twisted-Python] LoopingCall question : ping w/ timeout using shared variable -> problem
gabriel.rossetti at arimaz.com
Thu Sep 25 08:40:01 EDT 2008
Gabriel Rossetti wrote:
> Hello everyone!
> I have written some code uses a LoopingCall to send a "ping" at
> regular intervals. If it hasn't received an answer before the next
> call, it notifies me that the destination isn't available, if it does
> then it does nothing. I am getting lots of "unavailables" on hosts
> that are, I tried augmenting the timeout (the ping interval) and it
> doesn't change anything. I think what is happening is I'm using a
> simple variable to keep the availability state and that since protocol
> and the LoopingCall's callback both access the variable, this causes
> problems. Is there a better way of doing things or am I bound to use
> some sort of locking mechanism? If I have to use locking, which one do
> you recommend?
> Thank you,
I tried using a reactor.callLater call and if it fires then it notifies
me (unavailable) and if I get the response I cancel it and start over,
this seams like a better approach.
More information about the Twisted-Python