(PHP 4 >= 4.1.0, PHP 5)
pcntl_waitpid — Bir çocuk sürecin çıkmasını bekler ve durum kodunu döndürür
pid ile belirtilen çocuk süreç çıkana veya sonlandırıcı bir sinyal alana ya da bir sinyal eylemcisi çağrılana kadar çalışmakta olan sürecin çalışmasını askıya alır.
pid ile belirtilen çocuk zaten çıkmışsa (yani bir zombi süreçse) işlev beklemeden döner. Çocuk sürecin kullandığı sistem özkaynakları serbest bırakılır. Sisteminizde waitpid'in nasıl çalıştığı hakkında ayrıntılı bilgi edinmek için waitpid(2) kılavuz sayfasına bakınız.
pid değeri şunlardan biri olabilir:
< -1 | Süreç grup kimliği pid'in mutlak değeriyle eşleşen çocuk süreç için beklenir. |
-1 | Herhangi bir çocuk süreç için beklenir; bu, wait işlevinin davranışıyla aynıdır. |
0 | Süreç grup kimliği çağıran sürecinkiyle aynı olan çocuk süreç için beklenir. |
> 0 | Süreç grup kimliği pid ile eşleşen çocuk süreç için beklenir. |
Bilginize:
pid değiştirgesine -1 belirtmek, (seçenekler haricinde) pcntl_wait() işlevselliğine denktir.
pcntl_waitpid() işlevi durum değiştirgesinde şu işlevler ile değerendirilmek üzere durum bilgisini saklar: pcntl_wifexited(), pcntl_wifstopped(), pcntl_wifsignaled(), pcntl_wexitstatus(), pcntl_wtermsig() ve pcntl_wstopsig().
Değeri aşağıdaki küresel sabitlerin bitsel VEYAlanmışıdır:
WNOHANG | Çıkmış çocuk süreç yoksa hemen dön. |
WUNTRACED | Durumu raporlanmamış ve durmuş çocuklar varsa dön. |
Çocuk süreç çıkmışsa süreç kimliği, hata oluşmuşsa -1, WNOHANG kullanılmış ama ortada bir çocuk süreç yoksa 0 ile döner.