Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/multithreading/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Multithreading 跟踪后台进程?_Multithreading_Perl - Fatal编程技术网

Multithreading 跟踪后台进程?

Multithreading 跟踪后台进程?,multithreading,perl,Multithreading,Perl,我想运行一组由Perl调用的进程,但一次只想运行8个(我机器上的内核数)。例如: for ( my $i = 1; $i <= 20; $i++) { my $command = `some_process $i &`; } 对于(my$i=1;$i您可以尝试使用waitbultin(请参阅perlfunc(1)手册页): for(my$i=1;$i=8; my$command=`some_进程$i&`; } 但是不能保证进程在处理器之间均匀分布。我建议查看pe

我想运行一组由Perl调用的进程,但一次只想运行8个(我机器上的内核数)。例如:

for ( my $i = 1; $i <= 20; $i++) {
        my $command = `some_process $i &`;
}

对于(my$i=1;$i您可以尝试使用
wait
bultin(请参阅perlfunc(1)手册页):

for(my$i=1;$i=8;
my$command=`some_进程$i&`;
}

但是不能保证进程在处理器之间均匀分布。

我建议查看perldoc的线程

数一数你的线程。当一个线程完成后,再做一个新线程
保持线程的并行性::forkmanagery您的问题混淆了两个概念。进程VS线程和任务。它们需要作为不同的进程执行吗?谢谢!非常有魅力,非常聪明!
for ( my $i = 1; $i <= 20; $i++) {
  wait if $i > 8;
  my $command = `some_process $i &`;
}