Making a timebomb
Cantankerous Old Git
CantankerousOldGit at gmail.com
Sat Aug 6 01:38:16 CEST 2005
callmebill at gmail.com wrote:
> I have a server that right now runs infinitely. I'd like to make it
> die after some amount of time. I was thinking of having a timebomb
> thread that starts when the server starts. The timebomb sits, and
> sleeps for the specified timeout period (e.g., 5 hours), then does
> something to make the main thread terminate. But I'm too inexperienced
> to figure out what that thing is.
> Any suggestions?
> class TimeBomb( threading.Thread ):
> def run(self):
> timeout = 5 * 60 * 60 #-- 3 hours
> time.sleep( timeout )
> class MyServer:
> def __init__(self):
The proper way to do it is to have the timer set a flag that the
other threads check regularly. The threads can then clean up and
The dirty way, which can leave corrupt half-written files and
other nasties, is something like sys.exit().
More information about the Python-list