我有一个项目,我正在创建一个文件,并使用以下方式获取文件创建时间: -
stat("C:/repos/trunk/logging/test.log",&attrib);
我想缓存最后一个时间戳,以便我不会在每条日志消息上都这样。
请提供帮助。
谢谢
答案 0 :(得分:0)
stat
不会为您提供文件创建时间。它为您提供文件修改时间,访问时间和inode更改时间。
如果您愿意,您当然可以缓存该信息,这可能会受到缓存的正常问题的影响,也就是说,如果文件被修改并且您不会很快再次检查,则可能会在缓存中出现过时数据。
如果您的程序是单线程的,并且您只处理一个文件,则可以使用static
变量。否则,您可能希望创建一个对象(在OO意义上),它将缓存的时间戳和缓存值的TTL保持为内部状态,并提供查询和/或刷新值的方法。