JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器

这篇具有很好参考价值的文章主要介绍了JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

1. JAVA中的线程

 2.  栈区 

2.1 栈帧

2.2 栈可能出现的异常

2.3 设置栈大小

3.程序计数器(PC)

 4. PC和栈发挥的作用

 5. 关于栈的常见面试题


       虚拟机包含三大部分,类加载子系统,运行时数据区,执行引擎。运行时数据区又包含方法区,堆区,栈区,程序计数器,本地方法栈。本篇说明一下虚拟机栈和程序计数器。

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,javaJVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

1. JAVA中的线程

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 2.  栈区 

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

2.1 栈帧

栈是有栈帧组成,每个栈帧又有自己的内部结构

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

2.2 栈可能出现的异常

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

2.3 设置栈大小

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

3.程序计数器(PC)

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 4. PC和栈发挥的作用

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 5. 关于栈的常见面试题

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

 JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器,JVM,java,jvm,java

局部变量线程安全总结:发生逃逸的不是线程安全的,不逃逸的是线程安全的文章来源地址https://www.toymoban.com/news/detail-676251.html

到了这里,关于JVM第三篇 运行时数据区-虚拟机栈和PC程序计数器的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【数据结构】栈的使用|模拟实现|应用|栈与虚拟机栈和栈帧的区别

    目录 一、栈(Stack) 1.1 概念 1.2 栈的使用 1.3 栈的模拟实现 1.4 栈的应用场景 1. 改变元素的序列 2. 将递归转化为循环 3. 括号匹配 4. 逆波兰表达式求值 5. 出栈入栈次序匹配 6. 最小栈 1.5 概念区分 推荐 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分

    2024年02月04日
    浏览(47)
  • [JVM] 5. 运行时数据区(2)-- 程序计数器(Program Counter Register)

    JVM中的程序计数器(Program Counter Register)是对物理PC寄存器的一种抽象模拟。 它是一块很小的内存空间,几乎可以忽略不记。也是运行速度最快的存储区域。 在 JVM 规范中,每个线程都有它自己的程序计数器,是线程私有的,生命周期与线程的生命周期保持一致。 任何时间一

    2024年02月16日
    浏览(85)
  • 运行时内存数据区之虚拟机栈——操作数栈

    每一个独立的栈帧中除了包含局部变量表以外,还包含一个后进先出(Last-In-First-Out)的操作数栈,也可以称之为表达式栈(Expression Stack)。 操作数栈,在方法执行过程中,根据字节码指令,往栈中写入数据或提取数据,即入栈(push)/出栈(pop)。 某些字节码指令将值压入操作数栈,

    2023年04月12日
    浏览(43)
  • JVM 虚拟机栈介绍

    一、虚拟机栈(VM Stack)   1.1)什么是虚拟机栈 虚拟机栈是用于描述java方法执行的内存模型。 每个java方法在执行时,会创建一个“栈帧(stack frame)”,栈帧的结构分为“局部变量表、操作数栈、动态链接、方法出口”几个部分(具体的作用会在字节码执行引擎章节中讲到

    2024年02月08日
    浏览(38)
  • Java虚拟机(JVM):虚拟机栈溢出

    Java虚拟机栈溢出(Java Virtual Machine Stack Overflow)是指在Java程序中,当线程调用的方法层级过深,导致栈空间溢出的情况。 Java虚拟机栈是每个线程私有的,用于存储方法的调用和局部变量的内存空间。每当一个方法被调用时,会在栈中创建一个栈帧,用于存储方法的参数、局

    2024年02月12日
    浏览(50)
  • 【jvm】虚拟机栈之动态链接

    一、说明 1.指向运行时常量池的方法引用 2.每一个栈帧内部都包含一个指向运行时常量池中该栈帧所属方法的引用 3.包含这个引用的目的就是为了支持当前方法的代码能够实现动态链接(Dynamic Linking) 4.在java源文件被编译到字节码文件中时,所有的变量和方法引用都作为符号

    2024年02月08日
    浏览(39)
  • 深入理解JVM虚拟机第十五篇:虚拟机栈常见异常以及如何设置虚拟机栈的大小

    😉😉 学习交流群: ✅✅1:这是 孙哥suns 给大家的福利! ✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 🥭🥭3:QQ群: 583783824   📚📚  工作微信: BigTreeJava 拉你进微信群,免费领取! 🍎🍎4:本文章内容出自上述:Spring应用课程!💞💞

    2024年02月06日
    浏览(47)
  • 【Java虚拟机学习1】JVM运行时数据区

    我们知道Java程序是运行在JVM(Java虚拟机)上的,Java程序运行时会占用一定的内存,在虚拟机自动管理机制的帮助下,不再需要为每一个new操作去写配对的delete/free代码,不容易出现内存泄漏和内存溢出的问题,看起来由虚拟机管理内存一切都很美好。不过,也正式因为Java程

    2024年02月16日
    浏览(37)
  • jvm 程序计算器 程序计数器是否溢出 程序计数器是做什么的 java程序计数器会内存溢出吗 程序计数器作用与用处 jvm内存模型 jvm合集(一)

    1. jvm内存模型:     内存模型:                     程序计数器                     堆                     栈                     本地方法栈                     方法区 2. java代码编译为class文件,由类加载器加载到jvm,然后

    2024年02月09日
    浏览(47)
  • jvm复习,深入理解java虚拟机一:运行时数据区域

            程序计数器 (Program Counter Register) 它是程序控制流的指示器,简单来说,为了线程切换后能恢复到正确的执行位置,每条线程都需要有一个独立的程序计数器          Java虚拟机栈 (Java Virtual Machine Stack)也是线程私有的,它的生命周期 与线程相同。虚拟机栈描述

    2024年01月22日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包