ofstream::close() 是否在 Linux 上调用同步?
does ofstream::close() call sync on linux?
这个问题:close(( 在 Linux 上调用 fsync(( 吗?
这个问题描述了 close(( (c lib( 不会在 Linux 上调用同步。
这是否与 fstream::close((?:
http://www.cplusplus.com/reference/fstream/fstream/close/建议 IS 确实将所有剩余的字节写入文件。我观察到(罕见的(情况,我完成将 2-3KB 的块写入文件,调用 fs.close((,然后尝试打开它并且打开失败。添加短暂的延迟和/或调用同步似乎可以解决这个问题。
所以我想我已经回答了我自己的问题,但 std::fstream::close(( 描述让我感到困惑
它可能取决于库实现,但对于常见的实现,它不依赖于库实现。以 ccp 首选项写入的内容意味着内部流缓冲区在关闭之前写入任何挂起的字节。但它不会请求操作系统驱动程序强制在磁盘设备上立即写入。
do ofstream::close(( 调用同步...
它将刷新流内部的缓冲区,并关闭它。是否与sync
或fsync
相媲美的东西被称为不分钱。
。在 Linux 上?
这取决于实施。因此,这可能取决于您使用的标准库实现。如果你使用开源的,你可以看看源代码,看看它的作用。
相关文章:
- ofstream::close() 是否在 Linux 上调用同步?
- 如何使用 C/C++ 和 system() 系统调用以外的其他方法在 Linux 中获取文件功能?
- Linux c++.在预加载的共享库中定义的基类的崩溃调用函数
- 在linux中,mono调用我的.so-lib返回System.EntryPointNotFoundException
- 将 Linux system() 调用命令的输出重定向到仅可变的
- linux 是否"rename"函数调用块,直到复制(当源和目标在不同磁盘中时)完成
- C++ fork() 和 execl() 调用 (Linux) 后无法识别命令
- 旧的 32 位 Linux 程序最终如何调用 64 位库
- 如何知道我正在使用的Linux OS是否具有特定的系统调用
- 调用 pthread_create() C++ Linux 时的段错误
- 错误:没有匹配的成员函数调用 'upper_bound' =>仅在 macOS 上 => Windows 和 Linux 都很好
- Linux 系统调用 + 交叉编译
- 如何使用Mono / C#程序调用Linux / C ++函数?
- 如何使用C/C 系统调用来获取Linux过程中一个过程的当前大小
- 通过调用 c++ 函数列出 Linux 系统的所有用户名
- 当功能返回时,Linux C 系统()调用崩溃
- JVM调用时可以找到Linux插座API
- 在应用程序内部调用linux命令行工具
- C++调用Linux命令分叉孩子
- 有没有C++方法来调用 linux shell 命令