Мне нужно, чтобы все мои потоки периодически проверяли, что они все еще должны работать, чтобы они могли самостоятельно завершать работу после завершения программы. Для всех, кроме одного, это просто вопрос проверки переменной состояния, но последний является потоком взаимодействия с пользователем, и его цикл будет бесконечно долго ждать при вводе пользователем, проверяя только переменную состояния, когда пользователь вводит инструкцию , В этот момент программа все равно не работает, так как класс не может работать должным образом, когда он не работает. В идеале, однако, я бы не хотел этого делать.
Я думаю, что лучшим решением, если это возможно, является тайм-аут на getline, но в случае, если это невозможно или хороший вариант, я открыт для любого варианта, который позволит аккуратно завершить поток .
Кроме того, я вижу много упоминаний о std :: getline. getline, кажется, работает, использую ли я пространство имен или нет. Является ли один псевдоним другого, и какой из них лучше использовать?