我希望确保 ofstream 已经写入了磁盘设备。有什么可移植的方法(在 POSIX 系统上可移植)可以实现这一点吗?
如果我单独以附加模式打开文件并获取文件描述符,然后使用该文件描述符调用 fsync,是否可以解决问题?像这样:
ofstream out(filename);
/* ...
write content into out
...
*/
out.close();
int fd = open(filename, O_APPEND);
fsync(fd);
close(fd);