第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

簡(jiǎn)單理解java虛擬機(jī)內(nèi)存區(qū)域

標(biāo)簽:
JVM

1. 简介

jvm在执行java程序的时候会将它所管理的内存划分为若干个不同的输区域,每个区域都有各自的用途。从线程的角度来分下类,jvm内存区域可以分为两类:线程私有和线程共享。
线程私有:虚拟机栈、本地方法栈和程序计数器。
线程共享:堆和方法区。

2. 具体介绍

2.1 程序计数器

程序计数器是当前线程所执行的字节码的行号提示器。简单理解就是根据这个字节码来确定下一步要干什么,比如调用哪个方法、处理哪个异常、执行哪段代码等等。
由于java多线程是轮流切换线程并分配处理器时间来实现的,在任何一个确定的时间里,处理器只能执行一个线程,因此每一个线程都已一个独立的程序计数器。

2.2 虚拟机栈

虚拟机栈是存储虚拟机方法调用时的信息,在调用虚拟机方法时,会生成一个栈帧,把调用方法的局部变量表(基本数据类型、对象引用和returnAdress类型)、操作数帧、动态链接和方法出口等信息放入栈帧,栈帧入栈到虚拟机栈,等方法执行完成时,该栈帧从虚拟机栈出栈。

2.3 本地方法栈

与虚拟机栈功能相同,只不过服务对象是本地方法。

2.4 java堆

java堆是jvm内存区域中最大的一部分,在虚拟机启动的时候创建,用于存放对象的实例。
不得不提java堆是垃圾收集器管理的主要区域。主要分为Eden、From Survivor和To Survivor空间等。而且java堆可以处于物理上不连续的内存空间中,只要逻辑上连续即可。

2.5 方法区

方法区用于存储已经被虚拟机加载的类的基本信息、常量、静态变量以及即时编译器编译后的代码等数据。可以分为永久代和运行时常量池。
运行时常量池一是用于存放编译期生成的各种字面量和符号引用,二是用于存放运行期新的常量,被利用的比较多的String类中的intern()方法。

声明

以上文字为个人理解,如有错误欢迎各位大佬批评指正,谢谢!

點(diǎn)擊查看更多內(nèi)容
1人點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消