Главная страница


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Artem Chuprina                       2:5020/371.32  12 Oct 2000  13:50:00
 To : max a sazonoff
 Subject : Re: fork & wait
 -------------------------------------------------------------------------------- 
 
 <max_a_sazonoff@p65.f8.n5004.z2.fidonet.org> wrote:
 
 mas> Hi, All !
 
 mas> хм. где я не прав, или почему остаются зомби?
 
 mas> после некоторого времени при выполнении нижеприведенной программы у меня
 mas> начинаются копиться зомби. и в конце концов все доходит до того, что новые
 mas> форки
 mas> вообще не создаются... а должно быть всегда 20 работающих форков....
 mas> спрашивается кто виноват и что делать?
 
 Виноват, как обычно, ты, а читать perldoc -f wait, указанный там ман и
 возможно, еще что-нибудь по архитектуре UNIX. Общая идея - после сдыхания
 ребенка надо вычистить соответствующее место в таблице процессов, получить код
 завершения и прочую информацию. Вызовом wait.
 
 mas> #!/usr/bin/perl
 mas> $SIG{CHLD} = \&kc;
 mas> sub kc {
 mas> wait;
 mas> $SIG{CHLD} = \&kc;
 mas> $i--;
 mas> }
 mas> srand;
 mas> $i=0;
 mas> while (1) {
 mas>  $pid = fork;
 mas>  die "Couldn't fork: $!" unless defined($pid);
 mas>  if ($pid == 0) {
 mas>    sleep(rand(20));
 mas>    exit;
 mas>  }
 mas>  else {
 mas>   $i++;
 
 mas>   if ($i>20) {
 
 mas>    sleep(50);
 mas>   }
 mas>  }
 mas> }
 
 mas>     best regards, max a sazonoff. icq#19373869
 -- 
 Счастливо!
   Ран.
 --- ifmail v.2.14.os-p7-tma3
  * Origin: MemoNet (2:5020/371.32@fidonet)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 fork & wait   max a sazonoff   05 Oct 2000 01:08:59 
 Re: fork & wait   Artem Chuprina   12 Oct 2000 13:50:00 
 Re: fork & wait   max a sazonoff   13 Oct 2000 17:54:23 
 Re: fork & wait   Artem Chuprina   17 Oct 2000 10:44:56 
Архивное /ru.perl/17121f35be5bd.html, оценка 3 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional