cpu内存:

java中对象区域

 

java多线程,内存模型

通过多线程机制使得多个任务同时执行处理,所有的线程共享JVM内存区域main memory,而每个线程又单独的有自己的工作内存,当线程与内存区域进行交互时,数据从主存拷贝到工作内存,进而交由线程处理(操作码+操作数)

java中对象区域

 

 1 使用句柄访问方式,Java 堆中将会划分出一块内存来作为句柄池,reference

中存储的就是对象的句柄地址,而句柄中包含了对象实例数据和类型数据各自的

具体地址信息,如下图所示。

 

java中对象区域

 

2 使用直接指针访问方式

java中对象区域

每创建一个线程,虚拟机就会为这个线程创建一个虚拟机栈,虚拟机栈表示Java方法执行的内存模型,每调用一个方法就会为每个方法生成一个栈帧(Stack Frame),用来存储局部变量表、操作数栈、动态链接、方法出口等信息。每个方法被调用和完成的过程,都对应一个栈帧从虚拟机栈上入栈和出栈的过程。虚拟机栈的生命周期和线程是相同的”。

相关文章:

  • 2021-04-26
  • 2021-12-21
  • 2022-12-23
  • 2019-09-17
  • 2021-09-24
  • 2021-10-07
  • 2021-12-13
猜你喜欢
  • 2021-07-25
  • 2021-06-02
  • 2021-07-23
  • 2021-10-31
  • 2018-06-26
  • 2022-12-23
相关资源
相似解决方案