Multithreading 跟踪后台进程?
我想运行一组由Perl调用的进程,但一次只想运行8个(我机器上的内核数)。例如: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
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 &`;
}