downloads | documentation | faq | getting help | mailing lists | licenses | wiki | reporting bugs | php.net sites | conferences | my php.net

search for in the

pcntl_sigwaitinfo> <pcntl_sigprocmask
[edit] Last updated: Fri, 26 Apr 2013

view this page in

pcntl_sigtimedwait

(PHP 5 >= 5.3.0)

pcntl_sigtimedwaitWaits for signals, with a timeout

Description

int pcntl_sigtimedwait ( array $set [, array &$siginfo [, int $seconds = 0 [, int $nanoseconds = 0 ]]] )

The pcntl_sigtimedwait() function operates in exactly the same way as pcntl_sigwaitinfo() except that it takes two additional parameters, seconds and nanoseconds, which enable an upper bound to be placed on the time for which the script is suspended.

Parameters

set

Array of signals to wait for.

siginfo

The siginfo is set to an array containing informations about the signal. See pcntl_sigwaitinfo().

seconds

Timeout in seconds.

nanoseconds

Timeout in nanoseconds.

Return Values

On success, pcntl_sigtimedwait() returns a signal number.

See Also



add a note add a note User Contributed Notes pcntl_sigtimedwait - [1 notes]
up
0
kak dot serpom dot po dot yaitsam at gmail dot com
3 years ago
In the case if pcntl_sigtimedwait() is unavailable (under Mac OS, under PHP < 5.3), you can pick up the workaround:

<?php
if (!function_exists('pcntl_sigtimedwait'))
{
 function
pcntl_sigtimedwait($signals,$siginfo,$sec,$nano)
 {
 
pcntl_signal_dispatch();
  if (
time_nanosleep($sec,$nano) === TRUE) {return FALSE;}
 
pcntl_signal_dispatch();
  return
TRUE;
 }
}
?>

Behaviour of this function differs from original one. This function returns true if a signal was retrieved and false if it was not retrieved. However, the timeout will be interrupted immediately when signal sent.

 
show source | credits | stats | sitemap | contact | advertising | mirror sites