当前位置: 首页 > wzjs >正文

365元做网站百度下载安装免费

365元做网站,百度下载安装免费,廊坊高端网站制作,班级网站主页怎么做程序计数器 笔记记录 1. 定义2. 作用3. 特点4. 拓展理解4.1 PC寄存器存储字节码指令地址有什么用?4.2 PC寄存器为什么被设定为线程私有的?4.3 为什么执行native方法时,是undefined? 学习资料来源-b站黑马JVM& 尚硅谷JVM精讲与…

程序计数器 笔记记录

  • 1. 定义
  • 2. 作用
  • 3. 特点
  • 4. 拓展理解
    • 4.1 PC寄存器存储字节码指令地址有什么用?
    • 4.2 PC寄存器为什么被设定为线程私有的?
    • 4.3 为什么执行native方法时,是undefined?

学习资料来源-b站黑马JVM& 尚硅谷JVM精讲与GC调优

1. 定义

Program Counter Register 程序计数器
当执行一条指令时,首先需要根据PC中存放的指令地址,将指令由内存取到指令寄存器中,此过程称为“取指令”。与此同时,PC中的地址或自动加1或由转移指针给出下一条指令的地址。此后经过分析指令,执行指令。完成第一条指令的执行,而后根据PC取出第二条指令的地址,如此循环,执行每一条指令。
JVM中的程序计数寄存器(Program Counter Register)中, Register 的命名源于CPU的寄存器,寄存器存储指令相关的现场信息。 CPU只有把数据装载到寄存器才能够运行。
这里,并非是广义上所指的物理寄存器,或许将其翻译为PC计数器(或指令计数器)会更加贴切(也称为程序钩子) ,并且也不容易引起一些不必要的误会。JVM中的PC寄存器是对物理PC寄存器的一种抽象模拟。

在这里插入图片描述

2. 作用

可以看作是当前线程所执行的字节码的行号指示器用于存储当前线程正在执行的 Java 方法的 JVM 指令地址。如果线程执行的是 Native 方法,计数器值为 null。是唯一一个在 Java 虚拟机规范中没有规定任何 OutOfMemoryError 情况的区域,生命周期与线程相同。来源于小林coding解释在这里插入图片描述

3. 特点

  • 线程私有,CPU给多个线程分配时间片,线程执行到某个位置的时候,可能时间片用完了,这时候就需要程序计数器去记录当前运行的指令的下一条,这样的话线程恢复后,就可以直接接着上一次执行的位置继续执行。每个线程都有自己的程序计数器。
  • 唯一一个不会出现内存溢出的部分
    ● 它是一块很小的内存空间,几乎可以忽略不记。也是运行速度最快的存储区域。不会随着程序的运行需要更大的空间。
    ● 在JVM规范中,每个线程都有它自己的程序计数器,是线程私有的,生命周期与线程的生命周期保持一致。

4. 拓展理解

4.1 PC寄存器存储字节码指令地址有什么用?

使用PC寄存器存储字节码指令地址有什么用呢?
(为什么使用PC寄存器记录当前线程的执行地址呢?)

因为CPU需要不停的切换各个线程,这时候切换回来以后,就得知道接着从哪开始继续执行。
JVM的字节码解释器就需要通过改变PC寄存器的值来明确下一条应该执行什么样的字节码指令。
● 通俗解释就是,不同的线程执行是有分配的时间片的,假设A线程执行一半时间片用完了就轮到其他线程了,其他线程可能执行完了以后,A线程这时候执行肯定要依赖程序计数器的标记在哪里继续执行,总不能直接执行。

4.2 PC寄存器为什么被设定为线程私有的?

PC寄存器为什么会被设定为线程私有?
我们都知道所谓的多线程在一个特定的时间段内只会执行其中某一个线程的方法,CPU会不停地做任务切换,这样必然导致经常中断或恢复,如何保证分毫无差呢?为了能够准确地记录各个线程正在执行的当前字节码指令地址,最好的办法自然是为每一个线程都分配一个PC寄存器,这样一来各个线程之间便可以进行独立计算,从而不会出现相互干扰的情况。

4.3 为什么执行native方法时,是undefined?

任何时间一个线程都只有一个方法在执行,也就是所谓的当前方法。程序计数器会存储当前线程正在执行的Java方法的JVM指令地址;或者,如果是在执行native方法,则是未指定值(undefined)。为什么?
native 本地方法是大多是通过C实现,并未编译成需要执行的字节码指令,所以在计数器中当然是空(undefined)。说白了,native已经出了虚拟机管控的范围了。

http://www.dtcms.com/wzjs/518894.html

相关文章:

  • 网站建设都需要合肥百度seo排名
  • 手表网站建设规划书今天刚刚发生的新闻最新新闻
  • 深圳低价做网站软文推广网站
  • 做网站是买服务器还是买主机深圳网站设计制作
  • 重庆网站建设网站建设西安外包公司排行
  • 个人网站首页设计十大门户网站
  • 两学一做网站是多少钱2022拉人头最暴利的app
  • 郴州网站建设推广服务seo外推软件
  • 惠州市企业网站seo营销工具线上销售平台有哪些
  • 东莞住房和城乡建设局网站百度指数怎么看排名
  • 做美食类网站分析百度关键词搜索排行
  • 网站制作自助推广引流网站
  • 网络运维服务方案网站seo服务
  • 怎么查网站是哪家公司做的我想做地推怎么找渠道
  • 武昌做网站培训机构招生方案模板
  • 个人网站的设计crm
  • 企业园林设计网站模板关键词seo优化排名公司
  • vue.js合作做网站么世界足球排名前100名
  • java做的网站的后缀是什么格式深圳网站制作公司
  • 做扎染的网站深圳全网推广服务
  • 深圳网站建设公司北京搜索引擎关键词优化
  • 个人做哪方面网站seoul什么意思
  • 佛山高端网站建设公司易推客app拉新平台
  • 微信分享网站怎么隐藏域名百度知道网址
  • 怎样做网站制作团队星巴克seo网络推广
  • 做题网站中计算多项式的值怎么做江门关键词排名优化
  • 如何注册网站域名和购买虚拟主机黑帽seo优化
  • 博览局网站建设网络营销工程师培训
  • 网站的付款链接怎么做的商品推广软文写作500字
  • 虫虫wap建站源码重庆森林经典台词梁朝伟