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.
pcntl_sigtimedwait
(PHP 5 >= 5.3.0)
pcntl_sigtimedwait — Sinyalleri zaman aşımı dolana kadar bekler
Açıklama
int pcntl_sigtimedwait
( array
$sinyaller
[, array &$bilgi
[, int $saniye = 0
[, int $nanosaniye = 0
]]] )Betiğin en çok ne kadar süreyle sinyal bekleyeceğini belirten son iki değiştigesi haricinde pcntl_sigwaitinfo() işleviyle aynıdır.
Değiştirgeler
-
sinyaller -
Beklenecek sinyalleri içeren dizi.
-
bilgi -
Sinyallerle ilgili bilgilerin saklandığı dizi. Ayrıntılar için pcntl_sigwaitinfo() işlevine bakınız.
-
saniye -
Saniye cinsinden zaman aşımı.
-
nanoseconds -
Nano saniye cinsinden zaman aşımı.
Dönen Değerler
Başarı durumunda sinyal numarasını döndürür.
Ayrıca Bakınız
- pcntl_sigprocmask() - Sinyalleri ekler, siler veya engeller
- pcntl_sigwaitinfo() - Belirtilen sinyalleri bekler
kak dot serpom dot po dot yaitsam at gmail dot com
26-Jul-2009 03:50
