Я пишу в файл каждую секунду, используя ofstream. Однако существует вероятность срабатывания сторожевого таймера, что приводит к перезагрузке всей моей системы. Когда это происходит, я теряю все свои данные, которые я записал в файл. Я пробовал std: flush, отключая буферы с помощью myfile.rdbuf () -> pubsetbuf (0,0), и пробовал myfile.flush () перед myfile.close (). Ничто не похоже на работу. Какие-либо предложения? Это в C ++.
Кажется, что невозможно использовать что-то конкретное с ofstream. Поэтому я закрыл файл fsync (), и это решило проблему.
Других решений пока нет …