关于FM与F + cache的IO性能比较
发布时间
阅读量:
阅读量
最近在看Windows核心编程17章
建议采用FileMapping方法进行大文件读写。虽然如此可以直接将文件映射到进程地址空间,并由操作系统负责替页、换页等复杂操作。只需将文件视为内存地址进行操作即可。
可是笔者意识到这可能相对于编码来说还是比较简单的,并不意味着将缓存这些都交给操作系统来处理就是一种明智的做法。尤其是在处理大规模的文件IO操作时。于是笔者对原书上那个具体的例子进行了详细的对比分析,并给出了具体说明以便更好地理解这一概念差异所在。首先是经过修改后的新代码实现,在这里我们采用了更简洁明了的方式完成了同样的功能目标;而新代码同样保留了原有逻辑的核心部分,并且通过优化提升了运行效率和资源利用率。
完整代码:
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <tchar.h>
#include <windows.h>
#include <iostream>
//
class CStopwatch {
public:
CStopwatch() { QueryPerformanceFrequency(&m_liPerfFreq); Start(); }
全部评论 (0)
还没有任何评论哟~
