У нас есть приложение c ++ (консоль), которое работает на windows и unix.
Это приложение использовало выходные файлы для вывода подробных файлов журнала системных вызовов / prints / и т. Д.
Проблема в том, что в некоторых случаях мы можем получить сигнал 11/2 после добавления новых функций.
Теперь, когда это происходит, мы не получаем «почти полную» информацию из файлов журнала, чтобы отследить причину ошибки / проблемы, поскольку выходные файлы не закрываются должным образом, когда возникает сигнал 11. (это только частичный или нулевой размер)
Мы рассмотрели возможность добавления команды очистки после каждой печати строки fprintf.
Q:
- Это считается хорошей практикой?
- хорошо ли работает fflush на платформе Windows?
- есть какие-нибудь мысли / другие способы сохранить файлы журналов, когда система может неожиданно зависнуть?