口述一下JVM
JVM的内存结构
按线程来讲可以分成两部分
一个是线程独占的
一个是线程共享的
线程共享的有方法区还有堆
线程独占的有程序计数器、本地方法栈和虚拟机栈
然后另外那个方法区的话它是java虚拟机的一个模型规范
然后具体实现的话是元空间和永久代,永久代是1.7的,1.8以后就被移除了,然后它就变成元空间了
元空间的话它是发布在计算机内存的,它是脱离了java虚拟机内存的独立存在的
-转自大佬https://www.bilibili.com/video/BV115411x7im?from=search&seid=14768048223267129126
标题运行时数据区组成
- 程序计数器(Program Counter Register)
- Java虚拟机栈(Java Virtual Machine Stacks)
- 本地方法栈(Native Method Stack)
- Java堆(Java Heap)
- 方法区(Methed Area)
图转自链接: https://www.cnblogs.com/chenpt/p/8953435.html.
参考资料
《深入理解java虚拟机》