JVM之垃圾回收过程
可达性分析算法通过GCRoots作为起始根节点,然后向下搜索,根据引用关系标出哪些是可回收对象,哪些是不可回收对象,GCRoots所走过的路径称为引用链,那么不可达的对象就可以被垃圾回收器回收。可作为GCRoots的对象1、在虚拟机栈中的局部变量所引用的对象可作为GCRoot,譬如各个线程所执行的方法中的局部变量,参数,临时变量等等。2、元空间中静态变量所引用的对象。3、元空间中常量所引用的对象。4、本地方法中的所引用的对象。5、Java虚拟机内部的引用,如class对象,一些常驻的异常对象(