Loading:


pcntl_wait
int pcntl_wait ( int &$status [, int $options= 0 ] )


Funkcja wstrzymuje wykonanie bieżącego procesu aż do wyjścia dziecka, lub aż do dostarczonego sygnału który zakańcza bieżący proces lub wywołuje obsługę sygnału funkcji.



Parametry

 

status - będzie przechowywał informacje , które mogą być oceniane za pomocą następujących funkcji  pcntl_wifexited(), pcntl_wifstopped(), pcntl_wifsignaled(), pcntl_wexitstatus(), pcntl_wtermsig() i pcntl_wstopsig().


options - jeśli  wait3 jest dostępny w systemie, możesz wprowadzić opcjonaly parametr options.

jeśli nie zostanie on dostarczony, będzie czekać do wywołania systemu.

Jełśi wait3 nie jest dostępny, dostarczaona wartość do options nie wywoła żadnego efektu.

Oto możliwe wartość dla options oprócz zera

WNOHANG

Zwraca natychmiast jeśli wyszło dizecko

WUNTRACED

Zwraca dla dziecka które jest zatrzymane i któego status nie został zraportoway.

 

 


Zwracane wartości


Zwraca ID procesu któe wyszło.



Napisz Artyku³

Listing


<?php
declare(ticks = 1);

$max=5;
$child=0;

// funkcja obsługi sygnału
function sig_handler($signo) {
  global $child;
  switch ($signo) {
   case SIGCHLD:
     echo "SIGCHLD received\n";
     $child--;
  }
}

// instalujemy obsługę dla sygnału martwych dzieci
pcntl_signal(SIGCHLD, "sig_handler");

while (1){
       $child++;
       $pid=pcntl_fork();
     
       if ($pid == -1) {
               die("could not fork");
       } else if ($pid) {
             
               // mamy rodzica
               if ( $child >= $max ){
                   pcntl_wait($status);
                   $child++;
               }
       } else {
               //mamy dziecko
               echo "\t Uruchamianie nowego dziecka | obecnie mamy $child \n";
               // przypuszczalnie robisz coś ciekawego
               sleep(rand(3,5));
               exit;
       }
}
?>




Dodano przez: igor
Ranga: Administrator serwisu Punktów: 28716
Komentarze użytkowników
    • Tre¶æ komentarza
      Kod do komentarza (opcjonalnie)
      PHP JavaScript MySQL Smarty SQL HTML CSS ActionScript
      Autor
      Token
      token

       

       








funkcje.net
Wszelkie prawa zastrzeżone©. | Funkcje.net 2008-2024 v.1.5 | design: diviXdesign & rainbowcolors