_  _   ,_
/^\/^\-/ @D
~(________/ PERL.LT
|L |L
L L
Straipsniai  Funkcijos 
Funkcijos/waitpid - palaukti kol bus pabaigtas bet kuris išėjęs iš pagrindinio procesas
  • waitpid PID,FLAGS

    Laukia tam tikro vaikinio proceso, kad jį nutraukti ir gražina nutraukto proceso pid arba -1, jei nėra tokio vaikinio proceso. Kai kuriose sistemose, reikšmė 0 parodo, kad vis dar yra veikiančių procesų. Būsena gražinama $? . Jei sakoma

        use POSIX ":sys_wait_h";
        #...
        do {
    	$kid = waitpid(-1, WNOHANG);
        } until $kid > 0;

    , tai galima padaryti neblokuojamą laukimą visiems neišspręstiems zombiniams procesams. Neblokuojamas laukimas yra galimas kompiuteriuose, palikančiuose arba waitpid(2), arba wait4(2) sisteminisu kvietimus. Visig, tam tikro pid laukimas su FLAGS 0 yra realizuotas visur. (Perl emuliuoja sisteminį kvietimą prisimindamas procesų būsenos reikšmes, kurios išsijungė, bet dar nebuvo surinktos Perl skripto.)

    Įsidėmėkite, kad kai kuriose sistemose, gražinama -1 reikšmė galėtų reikšti, jog vaikinis procesas automatiškai nužudomas. Žr. perlipc dėl detalių ir kitų pavyzdžių.

algirdas@perl.lt 2005.04.11 - $dabar