
pcntl_wait 함수의 두 번째 인자 `$status`는 자식 프로세스의 종료 상태를 나타내는 변수입니다. `$status`는 다음과 같은 값을 가질 수 있습니다.
- 0 : 자식 프로세스가 정상적으로 종료되었습니다.
- -1 : 자식 프로세스가 중단되었습니다.
- -2 : 자식 프로세스가 종료되었습니다. (부모 프로세스가 자식 프로세스를 종료했습니다.)
- -3 : 자식 프로세스가 종료되었습니다. (부모 프로세스가 자식 프로세스를 종료했습니다. 하지만 자식 프로세스가 이미 종료된 상태입니다.)
자식 프로세스의 종료 상태를 확인하기 위해, `$status` 변수의 값을 사용할 수 있습니다. 예를 들어, 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
php
$pid = pcntl_fork();
if ($pid == -1) {
die('could not fork');
} elseif ($pid) {
// 부모 프로세스
} else {
// 자식 프로세스
$status = pcntl_wait($status);
if ($status == 0) {
echo "자식 프로세스가 정상적으로 종료되었습니다.n";
} elseif ($status == -1) {
echo "자식 프로세스가 중단되었습니다.n";
} elseif ($status == -2) {
echo "자식 프로세스가 종료되었습니다. (부모 프로세스가 자식 프로세스를 종료했습니다.)n";
} elseif ($status == -3) {
echo "자식 프로세스가 종료되었습니다. (부모 프로세스가 자식 프로세스를 종료했습니다. 하지만 자식 프로세스가 이미 종료된 상태입니다.)n";
}
}
이러한 방법으로, `$status` 변수의 값을 사용하여 자식 프로세스의 종료 상태를 확인할 수 있습니다.
2025-04-02 02:33