@Rudtoha

Как отловить нажатие «крестика» при выполнении программы в консольном режиме?

Суть вот в чем: по мере выполнения программы ведется лог файл, но полностью запись в него идет только после завершения программы и нажатие крестика отменяет вообще какие-то заметки в логе. Есть ли возможность отловить событие нажатия крестика и обработать его?
  • Вопрос задан
  • 354 просмотра
Решения вопроса 1
@nirvimel
Под Windows это делается через SetConsoleCtrlHandler, например так.
Кроссплатформенно это делается через atexit.

P.S.: Но подобный способ работы с логом ненадежен априори.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
x67
@x67
Закрывай файл после каждой записи/итерации или уменьши буфер, например до 0. Иначе оно и при ошибке оно сохранять ничего не будет.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы