Задать вопрос

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

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

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

Похожие вопросы