当前位置: 首页 > 面试题库 >

虚拟机栈和本地方法栈为什么是私有的?

酆俊远
2023-03-14
本文向大家介绍虚拟机栈和本地方法栈为什么是私有的?相关面试题,主要包含被问及虚拟机栈和本地方法栈为什么是私有的?时的应答技巧和注意事项,需要的朋友参考一下
- 虚拟机栈:**每个 Java 方法在执行的同时会创建一个栈帧用于存储局部变量表、操作数栈、常量池引用等信息。从方法调用直至执行完成的过程,就对应着一个栈帧在 Java 虚拟机栈中入栈和出栈的过程。 - **本地方法栈:**和虚拟机栈所发挥的作用非常相似,区别是: **虚拟机栈为虚拟机执行 Java 方法 (也就是字节码)服务,而本地方法栈则为虚拟机使用到的 Native 方法服务。** 在 HotSpot 虚拟机中和 Java 虚拟机栈合二为一。 所以,为了**保证线程中的局部变量不被别的线程访问到**,虚拟机栈和本地方法栈是线程私有的。
 类似资料:
  • 虽然AST可以直接解释执行,实现也不复杂,但大部分语言,比如java,python,ruby(1.9版本之后)使用虚拟机解释字节码执行。字节码和AST的执行有很强的一致性,但字节码执行机制可以实现一些更细粒度的控制 这里的虚拟机是指执行一种低级语言字节码的虚拟机,这个限定可能强了些,比方说,前面说的一个AST解释器,也可以看做是一种虚拟机,因为理论上是可以有一个机器解释AST执行,但这里我们说的虚

  • 本文向大家介绍Java虚拟机JVM堆栈区,包括了Java虚拟机JVM堆栈区的使用技巧和注意事项,需要的朋友参考一下 以下是了解JVM堆栈区域的一些关键点- 在创建线程期间,Java虚拟机将创建一个单独的堆栈。 JVM在此堆栈上仅执行两个操作。操作是推入(即插入)和弹出(即删除)。 当前正在执行线程时,与其关联的堆栈称为运行时堆栈。 线程完成的每个方法调用,中间计算,局部变量的分配,调用参数等都作为

  • 简单地说,虚拟机(Virtual Machine)就是允许我们在当前操作系统中运行其他操作系统的软件,本质上和 VS、QQ 这些应用程序一样。 所以,只要我们在电脑(PC 或笔记本等)上安装好虚拟机软件,就可以模拟出来若干台相互独立的虚拟 PC 设备,每一个都如何一台真实的计算机。在此基础上,我们可以给每台虚拟的 PC 设备安装指定的操作系统,这样就可以实现在一台电脑上同时运行多个操作系统。 另外

  • 主要内容:进栈和出栈,栈的具体实现,栈的应用同 顺序表和 链表一样, 栈 也是用来存储逻辑关系为 "一对一" 数据的线性存储结构,如图 1 所示。 图 1 栈存储结构示意图 从图 1 我们看到,栈存储结构与之前所学的线性存储结构有所差异,这缘于栈对数据 "存" 和 "取" 的过程有特殊的要求: 栈只能从表的一端存取数据,另一端是封闭的,如图 1 所示; 在栈中,无论是存数据还是取数据,都必须遵循"先进后出"的原则,即最先进栈的元素最后出栈。

  • 在Azure中,有2个选项可用于创建虚拟机。A、 普通VM B.经典VM 有人知道这两种选择有什么区别吗?我们什么时候使用一个而不是另一个?

  • 本文向大家介绍队列和栈是什么?有什么区别?相关面试题,主要包含被问及队列和栈是什么?有什么区别?时的应答技巧和注意事项,需要的朋友参考一下 队列和栈都是被用来预存储数据的。 队列允许先进先出检索元素,但也有例外的情况,Deque 接口允许从两端检索元素。 栈和队列很相似,但它运行对元素进行后进先出进行检索。