SocketServer and timers
bryanjugglercryptographer at yahoo.com
bryanjugglercryptographer at yahoo.com
Fri Jul 28 10:44:06 EDT 2006
Simon Forman wrote:
> alf wrote:
> > Hi,
> >
> > I have one thread app using SocketServer and use server_forever() as a
> > main loop. All works fine, but now I need certain timer checking let's
> > say every 1 second something and stopping the main loop. So questions are:
> > -how to stop serve_forever
> > -how to implement timers
> >
> > thx, alf
>
> Do you really need a timer, or do you just want to check something
> every second or so?
>
> If the latter, then something like this would do it:
>
> from time import time
>
> INTERVAL = 1.0
>
> RUN = True
>
> while RUN:
>
> # Get a time in the future.
> T = time() + INTERVAL
>
> # Serve requests until then.
> while time() < T:
> server.handle_request()
> # Check whatever.
> if check():
> # Do something, for example, stop running.
> RUN = False
That alone does not work. If server.handle_request() blocks,
you don't get to the check(). You need some kind of timeout
in handle_request().
--
--Bryan
More information about the Python-list
mailing list