On Mon, Mar 18, 2002, Guido van Rossum wrote:
Yeah, unfortunately the only implementation technique I have to offer right now is to turn all acquire calls internally into a loop around an acquire call with a timeout in the order of 1 second, and to check signals each time around the loop. :-(
-1 The problem with this is that you really start tying yourself in knots. If you do a time.sleep() for one second, that can't be interrupted for a full second, either on keyboard interrupt or on releasing the lock. The finer-grained you go on time.sleep(), the more overhead you consume, and the coarser-grained you go, the more you limit throughput. I'm not aware of any good cross-platform technique for managing thread timeouts that is also "live". -- Aahz (aahz@pythoncraft.com) <*> http://www.pythoncraft.com/ The best way to get information on Usenet is not to ask a question, but to post the wrong information. --Aahz