라이브러리

[PHP] pcntl_sigtimedwait - 시간 초과로 신호를 기다립니다.




PCNTL sigtimedwait 함수

`pcntl_sigtimedwait` 함수는 PHP의 PCNTL 확장 함수 중 하나로, 시그널을 기다리는 함수입니다. 이 함수는 `sigtimedwait` 시스템 호출을 호출하여 시그널을 기다립니다.

함수 시그니처

`pcntl_sigtimedwait(array $set, array $sigmask, int $timeout)`

* `$set`: 시그널을 기다릴 시그널 집합입니다.
* `$sigmask`: 시그널을 기다릴 시그널 마스크입니다.
* `$timeout`: 시그널을 기다리는 시간입니다. 0이면 즉시 시그널을 기다립니다.

예제

#hostingforum.kr
php

<?php



// 시그널을 기다릴 시그널 집합을 정의합니다.

$sigset = array(SIGINT, SIGQUIT, SIGTERM);



// 시그널을 기다릴 시그널 마스크를 정의합니다.

$sigmask = array(SIGINT);



// 시그널을 기다리는 시간을 5초로 정의합니다.

$timeout = 5;



// pcntl_sigtimedwait 함수를 호출하여 시그널을 기다립니다.

$result = pcntl_sigtimedwait($sigset, $sigmask, $timeout);



// 시그널이 발생한 경우, 시그널 번호를 출력합니다.

if ($result > 0) {

    echo "시그널 번호: " . pcntl_signal_get_status($result) . "
";

} else {

    echo "시그널이 발생하지 않았습니다.
";

}



?>



이 예제에서는 `pcntl_sigtimedwait` 함수를 호출하여 5초 동안 `SIGINT`와 `SIGQUIT` 시그널을 기다립니다. 시그널이 발생하면 시그널 번호를 출력합니다.

주의

`pcntl_sigtimedwait` 함수는 PHP 7.2 이상에서만 사용할 수 있습니다. 또한, 이 함수는 PCNTL 확장 함수이므로, PHP의 PCNTL 확장 모듈이 활성화되어야 합니다.

참고

* `pcntl_signal_get_status` 함수: 시그널 번호를 얻는 함수입니다.
* `pcntl_signal` 함수: 시그널을 등록하는 함수입니다.
* `pcntl_signal_dispatch` 함수: 시그널을 처리하는 함수입니다.
  • profile_image
    나우호스팅 @pcs8404 

    호스팅포럼 화이팅!

    댓글목록

    등록된 댓글이 없습니다.

  • 전체 10,077건 / 339 페이지

검색

게시물 검색