繁体   English   中英

是否返回FindFirstFile / FindNextFile API对缓存结果?

[英]Does FindFirstFile/FindNextFile API pair cache results returned?

我不确定是否已被问到,我似乎找不到。

当我进行文件夹内容枚举时,您会知道通常的情况:

FindFirstFile();
do
{
}while(FindNextFile());

如果我仍在do/while循环时文件夹的内容发生更改,会发生什么情况? 假设添加,更改或删除了新文件或文件夹。 这是否反映在FindNextFile返回的结果中?

一个快速的测试案例表明,FindFirstFile不会将结果缓存在运行Windows 7的本地文件系统上。但是,一旦调用FindNext,结果就被缓存了(不完全,只有一点点)。 但是,由于Windows SDK中未记录此内容,因此必须将其视为实现细节,并且可以随时更改。 因此,以不依赖此行为的方式编写代码。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM