CSstdiofile对文件频繁读写的优化方法 2

https://bbs.csdn.net/wap/topics/200035733
这里一位网友提到一段代码
static CStdioFile g_file;

functionB()

{

//CStdioFile& file = g_file;

//file.Open();

...;

//file.Close();

}

functionA()

{

...;

g_file.Open();

while(...)

{
functionB();

}

g_file.Close();

}

请好心的网友帮忙解释下这段代码,既然file是stdiofile对象g_file的引用,那么在functionB中while循环中放入file.open和file.close,这还是不停地open和close一些文件,我的理解是仍然无法解决频繁读写硬盘的问题啊?

这段代码没有办法起频繁读写的优化的作用。要频繁读写的优化,需要将随机小数据读写变成大数据连续读写,这个需要各种缓存技术来实现。

采纳本回答,可以给一些代码参考。

可是,那个帖子里的网友采纳了这个方案,并说了可以解决问题。
我的应用也没办法大数据连续读写,只是为了尽量减少从远程硬盘中上百万个小文件中的一个文件的读写访问的次数!!!