6
lsof
是Unix的一個很好的工具,顯示當前打開的所有文件句柄。lsof對應的JVM?
有誰知道一個類似的工具,可以顯示正在運行的JVM中的所有打開的文件(通過JVMTI或任何類似的接口)?
在這種特殊情況下,我知道哪個類的句柄已打開就足夠了。方法/行,甚至整個鏈到GC根將是太棒了,但處理程序所有者類已經是一個好的開始。
我知道我可以做一個堆轉儲,在一個探查器中打開它並找出它,但這是一項單調乏味的任務,尤其是對於大堆。
我建議你使用更好的分析器。 ;)在YourKit中,我可以在應用程序運行時看到所有打開的文件。 –
我使用YourKit,但很少在實時環境中啓用分析。或者YourKit支持從轉儲中顯示文件句柄? – mindas
它支持通過用於所有打開文件的類進行搜索來顯示轉儲中的FileDescriptor。你可以看到引用任何文件的地方。 –