Forum Webscript.Ru

Программирование => Perl => Тема начата: Wyclef от 12 Марта 2002, 22:42:37

Название: Нужна помощь с fork
Отправлено: Wyclef от 12 Марта 2002, 22:42:37
Помогите разобраться :confused:

Я делаю скрипт и с небольшими объемами данных он справляестя хорошо без fork, но слышал чтобы он гарантированно отрабатывал на больших списках - нужно использовать fork.

Правильный ли код с форком?

мне не нужно ничего выводить во время работы конструкции в "else", просто по завершению должен быть редирект на $location, но до этого не доходит.

%hash - содержит много значений
MakeIt() - функция, вызывается для каждого элемента хэша, нужно чтобы гарантированно отработала для всех.

Короче как сделать так чтобы MakeIt() отработала n-ое кол-во раз в любом случае?

sub work {

...
...

$pid = fork();

if ($pid) {
          print $query->redirect("$location");
          exit;
} else {
          foreach (keys %hash) {
                    MakeIt($_, $foo, $bar);
          }
}

}

Заранее благодарю за помощь :)
Название: довольно забавно и в тему
Отправлено: Green Kakadu от 13 Марта 2002, 18:27:20
http://perl.ru/go.cgi?action=forum&board=advanced&op=display&num=177
Название: да похож вариант
Отправлено: Wyclef от 13 Марта 2002, 23:04:07
понятно :(

плохое решение - если родитель заканчивает работу раньше потомка то потомок убивается

вопрос остается открытым...