Консольное приложение.
Есть цикл, в нем по очереди вызываются 3 метода класса. Нужно чтобы при нажатии на кнопку с клавиатуры (к примеру 'A') цикл останавливался, с возможностью продолжения по кнопке (к примеру 'S').
Например, как-то так:
char c;
while(1)
{
...
if(kbhit()) // если была нажата какая-нибудь клавиша
{
if((c=getch())=='A') // если это буква 'A'
{
while(getch()!='S'); // то висеть на ф-ии приёма символа, пока он не будет равен 'S'
}
}
}
Выглядеть это могло бы как-то так:
volatile bool pauseCondition = false;
while (true) {
while (pauseCondition) sleep(100);
doPayloadIteration();
}
Тем временем на pauseCondition
может воздействовать другой поток, который обрабатывает пользовательсткий ввод.
Что-то типа
for(...)
{
....... // Бурная деятельность
if (kbhit())
{
char c = getch();
if (c == 'A')
{
while(getch() != 'S');
}
}
}
не устроит?... Или я неверно понял вопрос?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Изучаю тему наследования по практикуму учебника 2010 годаТам есть пример, который я взял для изучения вопроса наследования, где используется...
Делаю всё по книге "Создание сетевых приложений в среде Linux: Руководство разработчика"Не компилируется