JVM
文章平均质量分 66
赛昂cylon
这个作者很懒,什么都没留下…
展开
-
JMM--JAVA内存模型
CPU为了提高指令执行效率,会在一条指令执行过程中(比如去内存读数据(慢100倍)),去同时执行另一条指令,在Load2及后续读取操作要读取的数据被访问前,保证Load1要读取的数据被读取完毕。在Store2及后续写入操作执行前,保证Store1的写入操作对其它处理器可见。在Load2及后续所有读取操作执行前,保证Store1的写入对所有处理器可见。位于同一缓存行的两个不同数据,被两个不同CPU锁定,产生互相影响的伪共享问题。在Store2及后续写入操作被刷出前,保证Load1要读取的数据被读取完毕。原创 2023-03-03 16:58:32 · 86 阅读 · 0 评论 -
类加载-初始化
动态语言支持java.lang.invoke.MethodHandle解析的结果为REF_getstatic REF_putstatic REF_invokestatic的方法句柄时,该类必须初始化。指令重排可能导致对象初始化和应用变量赋值的先后顺序不确定,如果对象还未初始化就将引用赋值给变量,则可能有线程获取到的对象是不完整的,即半初始化的。preparation(class文件-->静态变量赋默认值int 0;5.混合执行-Xmixed /纯解释执行-Xint /纯编译执行--Xcomp。原创 2023-03-03 16:56:53 · 189 阅读 · 0 评论 -
JVM基础
Hotspot(oracle官方JVM),Jrockit(BEA公司开发,后被oracle收购合并于hotspot),J9-IBM,MicrosoftVM,TaobaoVM(淘宝深度定制版hotspot) ,LiquidVM(直接针对硬件),azul zing(最新垃圾回收业界标杆,www.azul.com)可执行语言(java,kotlin,scala,groovy...)——》class——》JVM。jvm是一种规范,一台虚拟的机器。原创 2023-03-03 16:57:34 · 100 阅读 · 0 评论