Я хочу определить, когда какой-то процесс застрял, но это не дает мне никаких подсказок по этому вопросу. Все, что я знаю, это то, что если он не выдает никакого вывода в течение заданного времени ожидания (скажем, 30 секунд), это означает, что он, вероятно, заблокирован.
Я знаю программу timeout
- аута coreutils, но она основана на полном времени завершения программы, а не на последней строке времени вывода. Я хотел бы, чтобы что-то подобное сработало:
timeout --stdout --stderr 30s my-program
Так есть ли способ сделать это? Как мне это сделать?