欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

问 使用 FILE_FLAG_NO_BUFFERING 是否会明显提高速度?

最编程 2024-03-26 15:05:09
...

我最近用它做了实验。因为我已经在做自己的缓冲区管理(实现一个缓冲区对,这是解析器中常用的),所以我认为FILE_FLAG_NO_BUFFERING可以通过避免额外的副本来提供帮助。我尝试了不同的(页面对齐的)缓冲区大小,但总是比不使用标志慢。

因为我的方案只需要读取整个文件一次,所以我尝试了FILE_FLAG_SEQUENTIAL_SCAN,这实际上有点帮助。

当您禁用缓冲时,您将无法获得预取和操作系统使用的其他缓存技巧的优势。当您给出正确的“提示”时,就像FILE_FLAG_SEQUENTIAL_SCAN一样,那么您可以最大限度地利用这些操作系统特性。

推荐阅读