当前位置:  开发笔记 > 编程语言 > 正文

文件的内存映射与CreateFile/ReadFile

如何解决《文件的内存映射与CreateFile/ReadFile》经验,为你挑选了1个好方法。

使用内存映射文件读取(常规大小的文件)而使用CreateFile ReadFile组合执行相同操作有什么缺点(如果有的话)?



1> ReinstateMon..:

使用ReadFile/WriteFile,您可以获得确定性的错误处理语义.使用内存映射文件时,抛出异常会返回错误.

此外,如果内存映射文件必须击中磁盘(甚至更糟的是网络),则内存读取可能需要几秒钟(甚至几分钟)才能完成.根据您的应用程序,这可能会导致意外停顿.

如果使用ReadFile/WriteFile,则可以使用API​​的异步变体来控制此行为.

如果使用ReadFile,您还可以获得更多确定性性能,特别是如果您的I/O模式是可预测的 - 内存映射I/O通常是随机的,而ReadFile几乎总是串行的(因为ReadFile读取当前文件位置并提前当前文件)位置).

推荐阅读
凹凸曼00威威_694
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有