线上遇到的一个问题,查看当时的内存快照信息时,指向了这部分方法代码。
对于JVM内存回收这块一一直很懵懂,只会背一些八股文,实战中没有经验。
最开始的时候,我以为是因为那个filePath被创建了多次文件对象,最后移除的那个文件对象又是新建的,然后导致文件对象之间存在相互引用,无法被gc回收。但是感觉我好像又理解错了,毕竟方法执行完了,新建的几个File对象引用也就和GCroot脱离了,可以被gc回收了才对。
求指点一二。下面是快照概要图。
线上遇到的一个问题,查看当时的内存快照信息时,指向了这部分方法代码。