1

シェルが予期せず終了したときに何かをクリーンアップする必要がある Python プログラムがあります。どのようなシグナルをキャッチする必要がありますか?

4

1 に答える 1

2

signalモジュールを使用して、特定のシグナルのハンドラーを追加します。たとえば、SIGINT と SIGTERM:

import signal
def handler(signum, frame):
    print('Caught signal %d' % signum)
    # Now do something (clean-up?) ...
signal.signal(signal.SIGINT, handler)
signal.signal(signal.SIGTERM, handler)

input() # Example to keep the program running
于 2012-07-29T10:45:01.587 に答える