При остановке дочернего процесса с помощью ctrl + Z, основной процесс пропускает одно нажатие, что с этим можно сделать?

Я работаю через не канонический режим.
Но когда cat приостанавливается с помощью ctrl + Z моя shell пропускает одно любое нажатие клавиши.
Флаги перевода в не канонический режим:
~(ICANON | ECHO | ISIG);
Перед вызовам восстанавливаю предыдущее значение, а после
waitpid(pid, &stat_loc, WUNTRACED) != -1
включаю снова не канонический режим, может кто знает из-за чего у меня данная проблема?
  • Вопрос задан
  • 67 просмотров
Решения вопроса 1
hapr-lera
@hapr-lera Автор вопроса
Нашел решение не уверен, что нормальное...
При остановке дочернего процесса надо ограничивать его по времени и тогда, а после первого удачного считывания можно восстановить на по умолчанию.
tty.c_cc[VMIN] = 0;
tty.c_cc[VTIME] = 1;
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
FunBox Екатеринбург
от 120 000 ₽
FunBox Томск
от 120 000 ₽
FunBox Санкт-Петербург
от 120 000 ₽
19 февр. 2020, в 04:53
2000 руб./за проект
19 февр. 2020, в 02:24
500 руб./за проект
18 февр. 2020, в 23:53
8000 руб./за проект