我有两个单独的脚本,我将尝试使用诸如 open($fh, '-|', "./monitor.pl" 之类的管道机制从另一个脚本(父进程)启动一个脚本(子进程)的执行) 这里的 monitor.pl 是子进程,因此它们都异步同时执行。放置在子进程的 while 循环中的命令的输出被连续写入管道句柄,因为这个原因缓冲区被填满了。所以请建议我刷新缓冲区的机制和适当的位置,这样子进程就不会在缓冲区填满时挂起。
问问题
502 次
1 回答
1
请参阅IO::Handle。
写入后自动刷新:
$fh->autoflush(1);
手动冲洗:
$fh->flush;
在低于5.14
您的 Perl 版本上,您还需要加载 IO::Handle 模块:
use IO::Handle qw();
于 2013-07-17T07:20:58.317 回答