JVM学习(一)--程序计数器

作用:记住下一个jvm指令的执行地址

每一行java源代码,会被编译为多行jvm指令,上文所说的执行地址就是这里的0,3,4等 ,由于执行访问特别频繁,程序计数器的底层是有寄存器来实现的

特点:

  • 线程私有,大家熟知java是支持多线程的,每个线程执行时都会有程序计数器的存在,这里的每个线程的程序计数器的独立的,也是线程安全的;如果是单核cpu,单线程的话,那么同样,当使用多线程时,通过调度器分配时间片的方式实现多线程的效果,如果第一次执行没执行完,那么也会把当前执行的程序计数器存起来,执行下一个获得时间片的程序,两次执行的程序计数器也不会相互影响
  • 永远不会内存溢出,这里是区别于,栈,堆,方法区等这些程序地址的,他们如果使用不当,都会造成内存溢出
相关推荐
电子云与长程纠缠6 小时前
Godot学习05 - 播放与分离FBX动画
学习·游戏引擎·godot
蒸蒸yyyyzwd6 小时前
day3学习笔记
笔记·学习
red_redemption7 小时前
自由学习记录(143)
学习
楼田莉子8 小时前
MySQL数据库:MySQL的数据类型
数据库·学习·mysql
2401_879693878 小时前
数据分析与科学计算
jvm·数据库·python
小陈phd8 小时前
系统架构师学习笔记(三)——计算机体系结构之存储系统
笔记·学习·系统架构
guslegend9 小时前
JVM中的各种垃圾回收算法
jvm
小王不爱笑1329 小时前
G1 GC 的核心基础:Region 模型的补充细节
java·jvm·算法
Rsun0455110 小时前
AI智能体学习路线
人工智能·学习
charlie11451419110 小时前
通用GUI编程技术——Win32 原生编程实战(十六)——Visual Studio 资源编辑器使用指南
开发语言·c++·ide·学习·gui·visual studio·win32