缓存时间戳

时间:2012-04-01 18:24:29

标签: file caching timestamp stat

我有一个项目,我正在创建一个文件,并使用以下方式获取文件创建时间: -

stat("C:/repos/trunk/logging/test.log",&attrib);

我想缓存最后一个时间戳,以便我不会在每条日志消息上都这样。

请提供帮助。

谢谢

1 个答案:

答案 0 :(得分:0)

stat不会为您提供文件创建时间。它为您提供文件修改时间,访问时间和inode更改时间。

如果您愿意,您当然可以缓存该信息,这可能会受到缓存的正常问题的影响,也就是说,如果文件被修改并且您不会很快再次检查,则可能会在缓存中出现过时数据。

如果您的程序是单线程的,并且您只处理一个文件,则可以使用static变量。否则,您可能希望创建一个对象(在OO意义上),它将缓存的时间戳和缓存值的TTL保持为内部状态,并提供查询和/或刷新值的方法。