我正在拼命寻找降低家用电脑上构建时间的廉价方法.我刚刚在
Windows XP上读取了一个
article about disabling the Last Access Time attribute的文件,因此简单的读取不会将任何内容写回磁盘.
It’s really simple too. At a DOS-prompt write:
fsutil behavior set disablelastaccess 1
有没有人在构建C项目的背景下尝试过它?有什么缺点吗?
解决方法
从
SetFileTime’s documentation开始:
“NTFS在上次访问后最多延迟一小时,将文件的上次访问时间更新延迟.”
没有真正关闭这一点 – 原始文章是错误的,数据不是每次访问都写出来的.
编辑:
至于为什么这篇文章的作者声称加速了10倍,我认为他将加速归结为错误:他还禁用了8.3文件名生成.要为文件生成8.3文件名,NTFS必须依次生成每种可能性,然后查看它是否已经在使用中(没有引用;我确定Raymond已经讨论过但无法找到链接).如果你的文件都共享相同的前六个字符,那么你会被这个问题所困扰,而且你应该把字符区分成前六个字符中的字符,这样它们就不会发生冲突.关闭短名称生成将阻止这一点.