라이브러리
[PHP] pcntl_wifsignaled - 상태 코드가 신호로 인한 종료를 나타내는지 확인합니다.
pcntl_wifsignaled 함수 소개
`pcntl_wifsignaled` 함수는 PHP의 PCNTL 확장 함수 중 하나로, 프로세스가 신호를 받았는지 여부를 확인하는 데 사용됩니다. 이 함수는 `pcntl_wexitstatus` 함수와 함께 사용하여 프로세스가 종료된 이유를 확인할 수 있습니다.
pcntl_wifsignaled 함수 사용법
`pcntl_wifsignaled` 함수는 다음과 같은 형식으로 사용됩니다.
#hostingforum.kr
php
bool pcntl_wifsignaled(int $status)
* `$status` : 프로세스의 종료 상태를 나타내는 정수 값입니다.
예제
다음 예제는 `pcntl_wifsignaled` 함수를 사용하여 프로세스가 신호를 받았는지 여부를 확인하는 방법을 보여줍니다.
#hostingforum.kr
php
<?php
// 프로세스 생성
$pid = pcntl_fork();
if ($pid == -1) {
die("fork failed");
} elseif ($pid) {
// 부모 프로세스
pcntl_waitpid($pid, $status);
if (pcntl_wifsignaled($status)) {
echo "자식 프로세스가 신호를 받았습니다.
";
} else {
echo "자식 프로세스가 정상적으로 종료되었습니다.
";
}
} else {
// 자식 프로세스
sleep(2);
posix_kill(getmypid(), 15); // SIGTERM 신호 보내기
exit(0);
}
?>
이 예제에서는 부모 프로세스가 자식 프로세스를 생성하고 `pcntl_waitpid` 함수를 사용하여 자식 프로세스의 종료 상태를 확인합니다. `pcntl_wifsignaled` 함수를 사용하여 자식 프로세스가 신호를 받았는지 여부를 확인합니다. 만약 자식 프로세스가 신호를 받았다면 "자식 프로세스가 신호를 받았습니다."라는 메시지가 출력됩니다. 그렇지 않다면 "자식 프로세스가 정상적으로 종료되었습니다."라는 메시지가 출력됩니다.
참고
* `pcntl_wifsignaled` 함수는 프로세스가 신호를 받았는지 여부를 확인하는 데 사용됩니다.
* `pcntl_wexitstatus` 함수와 함께 사용하여 프로세스가 종료된 이유를 확인할 수 있습니다.
* `pcntl_waitpid` 함수를 사용하여 프로세스의 종료 상태를 확인할 수 있습니다.
-
- 나우호스팅 @pcs8404
-
호스팅포럼 화이팅!
댓글목록
등록된 댓글이 없습니다.