- 博客(5)
- 资源 (1)
- 收藏
- 关注
原创 JVM复习(三)几种GC算法
1、引用计数法:没有被Java采用,通过引用计数来标识一个对象是否应该回收,对每一个对象都标记一个数量,一人使用就+1,两人使用就+2....,一旦释放就-1,以此类推。当一个对象引用数量为0,意味着无人使用就可以进行空间释放了。 引用计数法问题:伴随着加法和减法,影响性能;很难处理循环引用问题。 2、几大概念: 根:栈中引用的对象;方法区中静态成员或者常量引用的对象;JNI方法栈中引用对象...
2019-10-20 10:40:28
219
原创 JVM复习(二)JMM内存模型1
简述:每个线程都有一个工作内存,它与主存独立,工作内存中存放主存变量的值的拷贝 数据从主内存复制到工作内存时,有两个操作: 1、对主内存执行读操作read 2、对工作内存执行相应的装载load 数据从工作内存拷贝到主内存时,有两个操作: 1、工作内存执行存储store 2、主内存执行相应的写操作write 线程通信要通过主存,JMM通过控制主内存与每个线程的本地内存之间的交互,来为程...
2019-10-16 21:37:59
186
原创 JVM复习(一)启动流程和基本结构
JVM启动流程 java命令接一个带有main方法的启动类 首先装载配置,根据版本号等信息查找JVM配置文件jvm.cfg 根据配置文件定位需要的dll(jvm.dll) 从dll初始化虚拟获得相关的接口(JNIEnv),比如findclass等 找到main方法并运行 JVM基本结构 PC寄存器:指向下一条指令的地址,每个线程拥有一个PC寄存器,在线程创建时创建,执行本地方法时,...
2019-10-16 11:39:54
197
原创 HashMap几个关键数据
hashMap初始容量: 加载因子: 树和链表的临界值: 关于存两个相同值的问题,面试官很耐心帮我解释了一下,虽然并没有解决我的疑问,还是感谢他,虽然我到现在都没明白他想问什么,是想问解决hash冲突的方法吗?不是说了链表和红黑树的结构???当时我应该大胆问清楚,到现在也不知道他到底要问我什么。。。 ...
2019-10-13 20:47:20
204
原创 list扩容
今天常识答错了,扎心 list默认1.8应该是10! 10!10!10! 扩容过程: 容量:空为0,有数据则默认为10 数组复制:新数组容量为原来得1.5倍
2019-10-13 20:30:11
239
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅