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

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

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

特点:

  • 线程私有,大家熟知java是支持多线程的,每个线程执行时都会有程序计数器的存在,这里的每个线程的程序计数器的独立的,也是线程安全的;如果是单核cpu,单线程的话,那么同样,当使用多线程时,通过调度器分配时间片的方式实现多线程的效果,如果第一次执行没执行完,那么也会把当前执行的程序计数器存起来,执行下一个获得时间片的程序,两次执行的程序计数器也不会相互影响
  • 永远不会内存溢出,这里是区别于,栈,堆,方法区等这些程序地址的,他们如果使用不当,都会造成内存溢出
相关推荐
茯苓gao2 小时前
嵌入式开发笔记:QSerialPort 完整使用指南——从基础 API 到工程实战
笔记·嵌入式硬件·qt·学习
Mark_ZP2 小时前
CMS 垃圾回收器配置详解
jvm
min(a,b)2 小时前
学习第 6 天:类型注解、装饰器与高级特性
python·学习
北风toto2 小时前
LangGraph 深度使用教程与总结
jvm
minglie12 小时前
线性电枢和分圆多项式
学习
汉堡包0012 小时前
【工具分享】--威胁情报平台大全
学习·安全·web安全·信息安全
旺仔学长 哈哈4 小时前
55384 消防安全教育与逃生演练小程序:知识学习、案例浏览和在线演练一站式实现
学习·小程序·消防教育·逃生演练
井川廊咏4 小时前
初探性能优化——2个月到4小时的性能提升
jvm·数据库·性能优化
程序员天天困4 小时前
Arthas Profiler 火焰图实战:CPU 热点在哪一目了然
java·jvm·后端
今夜有雨.4 小时前
C++JSON 解析器
c++·笔记·后端·学习·json