how to kill subprocess when Python process is killed?

alex23 wuwei23 at gmail.com
Fri Aug 7 01:57:34 EDT 2009


On Aug 7, 3:42 pm, "mark.v.we... at gmail.com" <mark.v.we... at gmail.com>
wrote:
> When I kill the main process (cntl-C) the subprocess keeps running.
> How do I kill the subprocess too? The subprocess is likey to run a
> long time.

You can register functions to run when the Python process ends by
using the atexit[1] module.

The following has been tested & works under Python 2.6 on Windows XP:

    import atexit

    def cleanup():
        print 'stop the subprocess in here'

    atexit.register(cleanup)

    while True:
        pass


[1]: http://docs.python.org/library/atexit.html



More information about the Python-list mailing list