Как я могу ограничить время, затрачиваемое на определенный раздел скрипта Perl?

Есть ли способ построить счетчик времени, который позволит частям скрипта работать так долго, как он тикает? Например, у меня есть следующий код:

for my $i (0 .. $QUOTA-1) {
    build_dyna_file($i);
    comp_simu_exe;
    bin2txt2errormap($i);
}

Теоретически я хочу запустить этот цикл в течение 3 минут, даже если инструкции цикла еще не завершены, он все равно должен выйти из цикла ровно через 3 минуты.

На самом деле программа открывает окно счетчика времени, которое работает параллельно с частью скрипта (каждый раз, когда я его вызываю).

Кроме того, вспомогательный вызов «comp_simu_exe» запустить внешний симулятор (в оболочке), который по истечении времени ожидания - этот процесс также должен быть прерван (а не возвращаться через некоторое время).

sub comp_simu_exe{

system("simulator --shell");
}

Is there any connection between the dead coming problem to the system function call ?

Ответы на вопрос(3)

Ваш ответ на вопрос