Loading...
在上一篇文章中我们讲到了字节对齐的部分渊源与Java选择8字节对齐的情况,我们也观察到了在64位JDK下如果开启了指针压缩classx对象的内存布局会有如下一个变化:未开启指针压缩时:+0: [ _mark (8 bytes) ] +8: [ _klass (8 bytes) ] +16: [ field : long ClassX.l (8 bytes) ] ... +40: [ f...
在上篇文章中,我们创建了一个ClassX:public class ClassX { boolean b; Object o1; ...
首先先讲下Java中一个类创建实例如ClassX x = new ClassX();时在整个JVM(Hotspot)中的大致流程:首先JVM会加载ClassX这个类加载到perm区,也叫方法区(以前在Hotspot存放于永久代,后来被移到Metaspace),解析完字节码文件以后JVM会创建一个与ClassX类相对应的类模板对象,这个所谓的类模板对象其实就是个C++类的实例(hotspot中...
花里胡哨但没什么卵用系列又来辣昨天一个朋友问了我关于重排序的问题我整理了一下作为冷知识分享重排序分类指令重排序其实分两种: 第1种是编译器重排序/或者说...
放在最前面,在写文章之后若干天,机缘巧合被毕昇JDK社区邀请去Compiler SIG做分享,偷懒把这篇文章润色了一下当做了分享主题,slide比文章内容更加丰富,可以直接下载Slide文件slides-docker.rar/ 去看会议录屏(原谅我的渣渣口音),文章就不用看了,润色的内容没加到文章中去(别问为什么,问就是懒).首先说一个老生常谈的限制:我们在对Docker中的Java应用使用...