我是否正确假设 java.io.File(file).lastModified()
不会导致文件本身以任何方式加载,因此开销最小?这是一个非常基本的问题,但我找不到任何关于它的好的信息。
设置最后修改日期应该几乎没有任何开销,对吧?
如果我理解正确的话,这个元数据是与文件分开存储的,所以如果我没有弄错的话,读取和写入这些数据应该不会花费太多,但只是想确保我将它用作中心基础缓存机制。
根据迄今为止的评论和回复,这是否意味着仅针对我的文件使用过滤器进行目录列表会更高效?恕我直言,这听起来性能较差。
最佳答案
java.io.File(file)
返回一个 File
对象。这样文件对象就被实例化了。
每次调用 file.lastModified()
时,它都会以 native 方法调用 java.io.UnixFileSystem.getLastModifiedTime(File)
结束。
同样,每次您调用时都会发生这种情况。
所以这是您关心的开销部分。
关于java - 获取文件元数据的开销(上次修改日期),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16256285/