JVM
文章平均质量分 75
JVM知识
我举个栗子吧
这个作者很懒,什么都没留下…
展开
-
(二)对象的创建过程
(二)对象的创建过程对于java程序员来说,创建对象仅仅是使用new关键字来创建而已。但是对于JVM来说肯定不只是这么简单。那么JVM创建对象的过程是什么样的呢?JVM在遇到一条字节码new指令时,会先去常量池中检查看是否可以定位到new指令的参数所代表的符号引用,并检查这个符号引用是否进行过加载,连接,初始化。如果没有,那么必须先执行对应的类加载过程。在类加载过程检查通过后,接下来就是在Java堆中为新生对象分配内存了。而对象所需要分配的内存在类加载完成后便可以确定了,所以分配时,就是在内存中找到一原创 2021-07-19 14:36:15 · 169 阅读 · 1 评论 -
(一)JVM的运行时数据区域
JVM的运行时数据区域程序计数器程序计数器是线程私有的,生命周期与线程一致。程序计数器相当于Class字节码文件的行号指示器,字节码解释器工作时,便是通过改变程序计数器的值来选取下一条需要执行的字节码指令。他是程序控制流的指示器,控制着程序的分支、跳转、循环、异常处理、线程恢复等基础功能。程序计数器的空间非常小,但也是JVM中唯一不会出现OOM的区域。为什么程序计数器是线程私有的?CPU的一个核心在同一时刻,只供给一个线程使用。线程是通过CPU分配时间片来使用CPU核心进行运算的,而线程切换到核原创 2021-07-15 19:22:46 · 155 阅读 · 0 评论