나는 파이썬 3 스크립트를 가지고 있으며 부팅 할 때 실행됩니다. 그리고 그것은 출구에서 자유 로워지기를 바라는 일부 자원과 함께 작동합니다.파이썬 탐지 죽이기 요청
kill -6 $PID
을 사용하여 해당 스크립트를 종료하면 해당 스크립트를 종료하려면 어떻게해야합니까?
또는 exit 명령을 보내고 스크립트에서이를 감지하는 방법에 대한 다른 아이디어.
나는 파이썬 3 스크립트를 가지고 있으며 부팅 할 때 실행됩니다. 그리고 그것은 출구에서 자유 로워지기를 바라는 일부 자원과 함께 작동합니다.파이썬 탐지 죽이기 요청
kill -6 $PID
을 사용하여 해당 스크립트를 종료하면 해당 스크립트를 종료하려면 어떻게해야합니까?
또는 exit 명령을 보내고 스크립트에서이를 감지하는 방법에 대한 다른 아이디어.
signal 모듈이 당신이 찾고있는 모듈입니다.
import singal
def handler(signum, frame):
print 'Signal handler called with signal', signum
signal.signal(signal.SIGABRT, handler)
핸들러 함수 내에서 sys.exit()
으로 종료 할 수 있습니다.
그러나 SIGINT (터미널에서 CTRL + C를 누를 때 발생하는 현상) 또는 SIGTERM을 사용하여 프로그램을 종료하는 것이 더 일반적입니다. 정리 코드가 없다면 SIGINT를 처리하기 위해 한 줄의 코드를 작성할 필요가 없습니다. 기본적으로 KeyboardInterrupt 예외가 발생합니다 (catch되지 않으면 그 이유가 없으므로 except:
문을 사용하면 안됩니다).), 프로그램이 종료됩니다.
나는 SIGINT를 KeyboardInterrupt와 함께 사용하기로 결정했습니다. 고마워. –