我正在尝试编写一个 Perl 脚本,该脚本在 Windows Media Player 上的 n
目录中一个接一个地运行视频。
出于某种原因,在第 64 个视频播放时,它卡在 system(1, @commands)
上。
现在,命令是以下 for 循环中的 system(1, "C:\\Program Files (x86)\\Windows Media Player\\wmplayer", $path);
。
for (my $i = 0; $i < $n; $i++)
{
# do stuff
# Play video
system(1, "C:\\Program Files (x86)\\Windows Media Player\\wmplayer", $path);
sleep $duration + 1;
# do stuff
}
我想知道为什么它一直停在第 64 个视频(我已经运行了多次,而且总是第 64 个。)也许有人可以更好地向我解释
system(1, @commands)
?我所知道的是,在继续程序之前,它不会等待 @commands
完成...非常感谢!
最佳答案
您已达到可以同时运行的最大子进程数。收获那些使用 waitpid
完成的。
或者,如果您不关心进程的退出代码,那么您可能会有更好的运气
system(qq{start /b "" "c:\...\wmplayer" "$path"});
关于windows - 视频卡在 Perl 脚本中的系统(1,@commands)上,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11532500/