对象字段的虚共享问题是指什么?如何解决对象字段的虚共享问题?

写在前面本文隶属于专栏《100个问题搞定Java虚拟机》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定Java虚拟机解答假设两个线程分别访问同一对象中不同的 volatile 字段,逻辑上它们并没有共享内容,因此不需要同步。然


对象在堆内存中的存储布局是怎样的?

写在前面本文隶属于专栏《100个问题搞定Java虚拟机》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定Java虚拟机解答在 Hotspot 虚拟机中,对象在内存中存储的布局可以分为3块区域:对象头(Object Header)


new关键字在虚拟机中是怎样的一个过程?JVM构造对象的步骤都有哪些?

写在前面本文隶属于专栏《100个问题搞定Java虚拟机》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定Java虚拟机解答补充指针碰撞如果Java堆中的内存是绝对规整的,所有用过的内存都放在一边,空闲的内存放在另一边,中间放着一


方法区,永久代,常量池,元空间有何关系?

写在前面本文隶属于专栏《100个问题搞定Java虚拟机》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定Java虚拟机解答方法区是 Java 虚拟机规范中的一个逻辑概念,(运行时)常量池是方法区的一部分,用于存放编译期生成的各种


JVM为什么采用面向操作数栈而不是寄存器的架构?

写在前面本文隶属于专栏《100个问题搞定Java虚拟机》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定Java虚拟机解答Java是最早提出一次编译四处运行的计算机语言。为了支持这种跨平台的特性,只有面向操作数栈的指令集架构才能


Java如何使用直接内存?

写在前面本文隶属于专栏《100个问题搞定Java虚拟机》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定Java虚拟机解答在JDK1.4中新加人了NIO(New Input/Output)类,引人了一种基于通道(Channel)


Java方法调用的过程是怎样的?

写在前面本文隶属于专栏《100个问题搞定Java虚拟机》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定Java虚拟机解答方法(Java中称为方法,其他语言一般称为函数)调用主要是通过栈来存储相关的数据,系统就方法调用者和方法如


堆和栈有何区别?

写在前面本文隶属于专栏《100个问题搞定Java虚拟机》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定Java虚拟机解答JVM 中堆指的 Java 堆,栈指的 Java 虚拟机栈。区别堆栈功能存储Java对象描述Java方法执


JVM运行时数据区如何划分?

写在前面本文隶属于专栏《100个问题搞定Java虚拟机》,该专栏为笔者原创,引用请注明来源,不足和错误之处请在评论区帮忙指出,谢谢!本专栏目录结构和文献引用请见100个问题搞定Java虚拟机解答JVM运行时数据区可划分为,程序计数器(PC寄存器),Java虚拟机栈,本地方法栈,方法区和堆。其中方法区和