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


ru.perl

 
 - RU.PERL ----------------------------------------------------------------------
 From : Pavel Ammosov                        2:5020/52      07 Sep 2001  02:08:17
 To : Timur V. Irmatov
 Subject : Re: child process
 -------------------------------------------------------------------------------- 
 
 TVI>Вот такая трабла... Перловый скрипт порождает потомка, читает
 TVI>построчно его вывод и выводит на стандартный вывод полученную
 TVI>строку.. Дочерний процесс пишет по строке каждую секунду.. При
 TVI>запуске выяснятся, что пока дочерний процесс не завершится и не
 TVI>закроет канал, основной процесс не читает ни строчки...
 
 Это буферизация.
 
 TVI>#!/usr/bin/perl -w
 TVI>$pid = open(IN, "-|");
 TVI>die "can't fork: $!\n" if !defined($pid);
 TVI>if ($pid) {
 TVI>    while (<IN>) {
 TVI>        print "from child: $_";
 TVI>    }
 TVI>} else {
 
 #Тут добавь:
    $|++;
 
 TVI>    for ($i = 0; $i < 10; ++$i) {
 TVI>        print "$i\n";
 TVI>        sleep 1;
 TVI>    }
 TVI>}
 
 -- 
 Pavel Ammosov                                               O    \
 apavel@aha.ru                                                 __  )
 http://isabase.philol.msu.ru/~apavel/                             )
 wget -O - isabase.philol.msu.ru/~apavel/key.asc|pgp -fka    O    /
 
 --- FIDOGATE 4.4.0-snp10
  * Origin: Zenon N.S.P. news server (2:5020/52.0)
 
 

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

 Тема:    Автор:    Дата:  
 Re: child process   Pavel Ammosov   07 Sep 2001 02:08:17 
Архивное /ru.perl/30505dded9592.html, оценка 1 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional