sub parallelizing{
my counter = 0;
my $MAX_PROCESS = 10;
my $workerQueue = Parallel::ForkManager->new($MAX_PROCESS);
$workerQueue->start and next;
print "$process #" . $counter . " started\n";
$counter = $counter +1
$workerQueue->finish;
}
Я использую Parallel::ForkManager
для создания дочерних процессов, которые разделяют переменную $counter
, но оказывается, что это не разделяет. Есть ли способ разрешить дочерним процессам совместно использовать переменную?Параллелизация Обработка массива
Вам нужно будет поговорить с родительским процессом и назначить родительский элемент. Может быть проще предварительно нарезать массив и ручные куски каждому работнику. – simbabque
Используйте [forks :: shared] (http://p3rl.org/forks::shared) или [threads :: shared] (http://p3rl.org/threads::shared), если вам нужно обмениваться данными. – choroba
Этот код не будет компилироваться по нескольким причинам. Пожалуйста, напишите * реальный * код, который вы написали и протестировали. – Borodin