Stopping a thread from another one
Peter Hansen
peter at engcorp.com
Tue Jun 22 21:41:15 EDT 2004
Fabiano Sidler wrote:
> I would prefer, if I end the subthreads by the main thread.
> Is there any chance?
The usual idiom is something like this:
class StoppableThread(threading.Thread):
def __init__(self):
threading.Thread.__init__(self)
self._running = False
def stop(self):
self._running = False
def run(self):
while self._running:
# do stuff here that loops periodically to allow
# the flag to be checked
Then from the main thread you can keep track of the child
threads and do xxx.stop() on each of them, then an optional
threading.Thread.join() call (check the docs for that).
This can be made more sophisticated as required.
-Peter
More information about the Python-list
mailing list