Какой поток может вызвать функцию запуска навсегда?Поток делает функцию run forever
Есть ли такой поток?
Какой поток может вызвать функцию запуска навсегда?Поток делает функцию run forever
Есть ли такой поток?
Стандартный ввод.
ifstream ("/ DEV/случайное") ifstream ("/ DEV/ноль")
Если поток встречает ошибку, он остановит возвращение/прием информации. Если ваша функция ждет, когда что-то выйдет из потока, она будет вращаться навсегда.
Используйте if (cin)
(приведите поток к bool
), чтобы проверить наличие ошибки. В качестве альтернативы вызовите cin.exceptions(ios::badbit)
при инициализации программы или потока, поэтому условие ошибки выдает исключение, а не тихое вращение.
Позвоните cin.clear()
(или любой другой поток), за которым следует cin.ignore()
, например, чтобы удалить оскорбительный ввод, если программа может восстановить такую ошибку.
Нет, нет ... этот ответ слишком серьезный. И вопрос был «какой поток», а не какой поток. +1 от меня все равно ;-) –
Этот вопрос не имеет каких-либо деталей вообще. На него нельзя ответить в текущей форме. – Omnifarious
Звучит как вопрос интервью для меня. – xtofl
Зачем вам нужен поток? Поместите 'for (;;);' в конце вашей функции, это заставляет его работать вечно. –