프로세스가 자신에게 신호를 보낼 때 "다른 보류 중, 차단되지 않은 신호"는 어떻게 관련됩니까?

프로세스가 자신에게 신호를 보낼 때 "다른 보류 중, 차단되지 않은 신호"는 어떻게 관련됩니까?

Unix 환경의 고급 프로그래밍설명하다:

#include <signal.h>
int kill(pid_t pid, int signo);

...

호출로 인해 kill호출 프로세스에 대한 신호가 생성되고 신호가 차단되지 않은 경우 signo또는 기타 대기 중이고 차단되지 않은 신호kill이 반환되기 전에 프로세스**에 전달됩니다. (스레드에서는 다른 조건이 발생할 수 있습니다. 자세한 내용은 섹션 12.8을 참조하세요.)

kill(pid, signo)그냥 신호를 보내세요 signo. 프로세스가 자신에게 신호를 보낼 때 "다른 보류 중, 차단되지 않은 신호"는 어떻게 관련됩니까?

감사해요.

답변1

전화 kill가 돌아오기 전에,일부신호가 전달되었습니다. 이미 다른 소스에서 전달을 기다리는 신호("보류 중")가 있는 경우 kill통화 시작과 끝 사이("반환 전")에 전달된 신호가 방금 만든 기존 신호일 수 있습니다. .

전송 대기 중인 신호가 없으면 signo지정한 신호가 예상대로 해당 간격 내에 전송됩니다.

만약 있다면보류 중인 신호 또는 새 신호가 전달되는지 여부는 지정되지 않으며 그 중 적어도 하나가 전달된다는 것만 보장됩니다.

관련 정보