[Spread-users] Spread python poll() taking almost 100% CPU
bcm at maz.org
Fri Oct 1 17:23:47 EDT 2004
Tim Peters wrote:
> You'll be happy with that; or, if you don't want to do anything other
> than get msgs, just do a straight:
> msg = mbox.receive()
> and let it worry about figuring out when a msg is available.
i was having the same problem as the original poster, so i switched to
the poll/sleep technique. seems to work fine.
i'd prefer to not have to poll tho, for the reason you mentioned. using
poll, i have to continuously check that the connection is still
connected, and reconnect if it somehow dropped away underneath. yuck.
however, my listener is a daemon (using the java service wrapper at
http://wrapper.tanukisoftware.org/). i want to be able to run "mydaemon
stop" and have the os shut down my listener cleanly. but if i do that
and the shutdown hook disconnects the spread connection while the
listening thread is still in msg.receive(), i get an exception. yuck.
any idea how i can sit in msg.receive() and then have my shutdown hook
disconnect the spread connection gracefully?
More information about the Spread-users