我写了这个应该打开几个进程的代码,问题是它在linux上运行得很好但是当我在windows上执行它时它只创建一个进程!! 这可以用perl在windows上创建多进程吗?
$j = ARGV[0];
for($i=1; $i<=$j; $i++){
system("perl example.pl word.txt.$i &");
}
Run Code Online (Sandbox Code Playgroud)
&是一个*nix的东西.forkWindows中的显式将执行此操作.
请记住,Perl的Windows实现使用线程模拟分叉,因此这可能是另一种选择.
my @pids;
for my $i (1 .. $j) {
my $pid = fork;
unless ( $pid ) { # Child
system("perl example.pl word.txt.$i");
exit 0;
}
push @pids, $pid;
}
waitpid $_, 0 foreach @pids;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
658 次 |
| 最近记录: |