Como posso encerrar um comando do sistema com alarme no Perl?
Estou executando o snippet de código abaixo no Windows. O servidor começa a ouvir continuamente após a leitura do cliente. Eu quero terminar este comando após um período de tempo.
Se eu usaralarme() chamada de função dentromain.pl
, então finaliza todo o programa Perl (aquimain.pl
), então eu chamei issosistema comando, colocando-o em um arquivo Perl separado e chamando este arquivo Perl (alarm.pl
) no arquivo Perl original usando osistema comando.
Mas dessa maneira eu não consegui pegar a saída dessesystem()
não chame nem no arquivo Perl original nem em um chamado arquivo Perl.
Alguém poderia me informar como encerrar umasystem()
ligar ou pegar a saída da maneira que usei acima?
my @output = system("alarm.pl");
print"one iperf completed\n";
open FILE, ">display.txt" or die $!;
print FILE @output_1;
close FILE;
alarm.plalarm 30;
my @output_1 = readpipe("adb shell cd /data/app; ./iperf -u -s -p 5001");
open FILE, ">display.txt" or die $!;
print FILE @output_1;
close FILE;
Nos dois sentidosdisplay.txt
está sempre vazio.