- 输入输出数据的缓冲由内核由
stdio
库完成。有时可能希望组织缓冲,但这需要了解其对应用程序性能的影响。可以使用各种系统调用和库函数来控制内核和stdio
缓冲,并执行一次性的缓冲区刷新。 - 进程使用
posix_fadvise()
函数,可就进程对特定文件可能采取的数据访问模式向内核提出建议。内核可借此来优化对缓冲区高速缓存的应用,进而提高 I/O 性能。 - 在 Linux 环境下,
open()
所特有的O_DIRECT
标识允许特定应用跳过缓冲区高速缓存。 - 在对同一个文件执行 I/O 操作室,
fileno()
和fdopen()
有助于系统调用和标准 C 语言库函数的混合使用。给定一个流,fileno()
将返回相应的文件描述符,fdopen()
则反其道而行之,针对指定的打开文件描述符创建一个新的流。
文件 IO 缓冲
Author: Wyatt Jia
License: Copyright (c) 2023 CC-BY-NC-4.0 LICENSE