关注
4 .JVM(运行时数据区域(与JMM的区别),GC root,新生代垃圾回收算法,老年代垃圾回收算法,新生代又分什么,垃圾回收机器(CMS,G1),类加载机制(双亲委派等等))--深入理解Java虚拟机
JVM(java虚拟机模型):包括java虚拟机栈,java堆,本低方法栈,程序计数器,方法区
JMM(java内存模型),主要是为了规定线程和内存之间的关系,系统存在一个主内存中,Java所有的变量都存在主存中,对于所有的线程都是共享的,线程对变量的操作都在各自的工作内存中进行,线程之间无法进行通信,变量传递需要通过主内存进行。个人认为,JMM就像是一个接口,提供了规范,JVM实现了这个接口。
GC(垃圾回收)是Java核心之一,判断什么样的对象才被GC主要有两种算法,引用计数法和标记-清除算法。
引用计数法是每个对象都有一个引用计数,当对象被创建的时,给对象的计数设置为1,当对象被引用时,计数加一,引用失效,计数减一,当计数器为0的对象就是不会被使用,就会被GC回收,这样效率很高,但是造成一个问题就是当对象循环引用的时候,计数器不会为0,对象就不会被销毁。
可达性分析:把所有的引用关系看成一张图,从一个节点GC root开始,向下开始寻找对应的引用节点,找到这个节点,继续向下寻找这个节点的引用节点,当所有的引用寻找结束后,剩余的节点就是没有被引用到的节点。
可以作为GC root节点的有:
虚拟机栈引用的对象
方法区中静态属性引用的对象
方法区中常量引用的对象
本地方法栈中引用的对象。
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享

点赞 评论 收藏
分享
牛客热帖
更多
- 1... 六月还有机会的,对吗?2517
- 2... 又因为选offer吵架了1922
- 3... 发现27282届的同学怎么越来越卷了,投个票看看相互的进度吧1626
- 4... 初闻不知曲中意 再听已是曲中人 —— 纪大学毕业1161
- 5... 记录一下选择969
- 6... 你的经历比较单薄, 但简历又弥补了这一点--双非仔个人简历分享914
- 7... 怎么包装实习经历呢859
- 8... 腾讯云智(一面和二面65min,三面35min)744
- 9... 27届2天速通美团到店(用户增长)724
- 10... 27双非本 飞轮数据科技 北京小厂(已offer)556
正在热议
更多
# 写给毕业5年后的自己 #
6020次浏览 116人参与
# 材料专业就业可以去哪些企业岗位 #
32614次浏览 313人参与
# 华泰证券Fintech星战营 #
171644次浏览 204人参与
# 职场捅娄子大赛 #
328153次浏览 3318人参与
# 你的秋招第一场笔试是哪家 #
127812次浏览 1388人参与
# 一人一个landing小技巧 #
63037次浏览 984人参与
# 硬件应届生薪资是否普遍偏低? #
69924次浏览 506人参与
# 你的论文盲审过了没? #
102897次浏览 1468人参与
# 制造业的秋招小结 #
87860次浏览 1605人参与
# 国央企笔面经互助 #
130276次浏览 1083人参与
# 毕业季等于分手季吗 #
20511次浏览 260人参与
# 机械制造秋招总结 #
50966次浏览 494人参与
# 好好告别我的学生时代 #
53592次浏览 954人参与
# 如果再来一次,你还会学硬件吗 #
122971次浏览 1400人参与
# 海信求职进展汇总 #
65791次浏览 363人参与
# 毕业后不工作的日子里我在做什么 #
173160次浏览 1524人参与
# 大疆求职进展汇总 #
498125次浏览 3247人参与
# 哪些公司笔/面试难度大? #
2257次浏览 19人参与
# 晒一下我的毕业照 #
37258次浏览 422人参与
# 今年形式下双非本找得到工作吗 #
131867次浏览 999人参与
# 机械制造岗投递时间线 #
22360次浏览 342人参与