시그널의 개념
시그널(signal) - 프로세스 간 통신 방식은 소프트웨어 인터럽트이다. 프로세스가 신호를 받으면 신호를 처리하기 위해 원래 프로그램 실행 흐름을 중단합니다.
몇 가지 공통 신호:
SIGINT 프로세스 종료 프로세스 중단(control+c)
SIGQUIT 프로세스 종료
SIGTERM 프로세스 종료 소프트웨어 종료 신호(기본 신호 )
SIGKILL 프로세스 종료 일부 처리, 코드는 다음과 같습니다:
import signal
def fun(sig, stack_frame):
print 'eixt %d , %s' % (sig, stack_frame)종료 (1)
signal.signal(signal.SIGINT, fun)
signal.signal(signal .SIGINT, fun)은 세마포어의 처리 함수를 등록하는 데 사용되며,
첫 번째 매개변수는 세마포어이고, 두 번째 매개변수는 함수에 전달할 수 있습니다.
이 함수에는 두 가지가 있습니다. 기본적으로 첫 번째 매개변수 sig는 수신된 세마포어를 나타냅니다. 두 개의 stack_frame은 인터럽트 세마포어 sig를 생성하는 호출 스택으로 이해될 수 있습니다.