1
我看着這個其他問題:如何獲取上次修改目錄的時間?
告訴我的東西是如何工作的,但並沒有真正提供任何解決方案。我如何獲得上次修改目錄的時間?我將使用這段時間來確定是否需要清除緩存,其內容是從目錄的內容計算出來的。
另一種方法是逐個遞歸遍歷每個文件和子文件夾,但這可能完全否定緩存的好處。據我所知,文件/文件夾的「mtime」和其他元數據被緩存在某處,並且實際上每次你想檢查時都不需要讀文件(這就是爲什麼在每個memcached文件上檢查mtime仍然是比加載文件本身更快,即使文件很小)。
那麼...有沒有什麼好的,快速的方法來獲取整個目錄的最後修改時間戳?
我在Python的工作,但我想如果這是可行的會有各種語言模擬。這只是最後一次修改「目錄」,並且不會在單個文件中找到更改,對吧? –
嗯,是的,不,filemtime方法可以用於目錄或文件。我的例子已設置爲檢查一個目錄。但是,檢查文件會非常容易。只需使用opendir()來讀取目錄中的所有文件,並且您也可以輕鬆地檢查這些文件。 – Landon
問題是目錄很深(5-6級?),裏面有很多文件。除非來自opendir()的文件列表也被緩存,否則它的檢查緩存失效花費可能比緩存首先給我的花費更多。我會運行一些基準。 –