Может быть, это ошибка в ядре или в программе, которую вы отслеживаете?
В программе может быть неправильно реализован цикл обработки событий, который ожидает неправильные команды, но после этого ожидает другие события EINTR
.
Пример:
за(;;) { Выбрать(...); if (FD_SET (... i ...)) { чтения (... я ...); написать (... J ...); // Наивная блокирующая запись } }
Это будет работать в тривиальном тесте, но вся программа может блокировать, если какие-либо блоки записи.
Приостановка / возобновление программы отменяет блокировку write
и приводит к продолжению основного цикла.