欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

基于jvm java內(nèi)存區(qū)域的介紹

 更新時(shí)間:2017年06月24日 10:44:34   投稿:jingxian  
下面小編就為大家?guī)硪黄趈vm java內(nèi)存區(qū)域的介紹。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
jvm虛擬機(jī)在運(yùn)行時(shí)需要用到的內(nèi)存區(qū)域.廣泛一點(diǎn)就是堆和棧,其實(shí)不然,堆和棧只是相對比較籠統(tǒng)的說法,真正區(qū)分有如下幾個(gè)
先上圖一:

總的就是

java的內(nèi)存模型

內(nèi)存模型又分堆內(nèi)存(heap)和方法區(qū)(有時(shí)也稱為non-heap)和棧

堆又分新生代(Young)和老年代(old/Tenured)

新生代又分默認(rèn)比例為8:1:1的eden空間、from survivor空間、to survivor空間

當(dāng)進(jìn)行垃圾回收時(shí),eden、survivor from 存活得對象會(huì)復(fù)制到servivor to空間

接著from與to空間互換.(當(dāng)from區(qū)的對象足夠老時(shí),即標(biāo)記的次數(shù)達(dá)到老年級(jí)別,便到老年代去)

內(nèi)存的大小設(shè)置參數(shù)可以如下一張圖說明

-XMS:堆的最小空間

-XMX:堆的最大空間

-PermSize:方法區(qū)的最小空間

-MaxPermSize:方法區(qū)的最大空間

-Xss:每個(gè)線程的堆??臻g

-newSize:新生代最小空間

-maxNewSize:新生代最大空間

老年代內(nèi)存可以通過設(shè)置堆的大寫和新生代的大小來控制

老年代內(nèi)存=堆內(nèi)存-新生代內(nèi)存

程序計(jì)數(shù)器

線程私有,控制著字節(jié)碼所執(zhí)行的行數(shù).調(diào)用本地方法(native)時(shí)為空

當(dāng)前線程所執(zhí)行的字節(jié)碼的行號(hào)指示器,字節(jié)碼解釋器就是在工作時(shí)通過改變計(jì)數(shù)器的行號(hào)來獲獲取要執(zhí)行的字節(jié)碼指令.調(diào)用本地方法(native)時(shí)計(jì)數(shù)器為空

虛擬機(jī)棧

線程私有,java執(zhí)行方法的內(nèi)存模型

每個(gè)方法執(zhí)行的時(shí)候都會(huì)創(chuàng)建一個(gè)棧幀,用于存放局部變量、操作數(shù)棧、動(dòng)態(tài)鏈接、方法出口等信息

局部變量表:基本數(shù)據(jù)類型、對象引用、long和double類型占兩個(gè)局部變量空間

每調(diào)用一個(gè)方法,都會(huì)對參數(shù)進(jìn)行壓棧

本地方法棧

線程私有.調(diào)用native方法時(shí)

堆:

堆內(nèi)存

線程共享,對象的實(shí)例以及數(shù)組都存儲(chǔ)在這里

堆又分新生代、老年代

在分代收集算法中,新生代又分eden空間、from survitor空間 和to survitor空間).它們之間內(nèi)存比例為8:1:1

方法區(qū)

線程共享

存放類的信息、常量、靜態(tài)變量、即時(shí)編譯后的代碼

方法區(qū)下又有運(yùn)行時(shí)常量池:存放編譯期生成的字面量和符號(hào)引用

以上這篇基于jvm java內(nèi)存區(qū)域的介紹就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • JAVA實(shí)現(xiàn)將磁盤中所有空文件夾進(jìn)行刪除的代碼

    JAVA實(shí)現(xiàn)將磁盤中所有空文件夾進(jìn)行刪除的代碼

    這篇文章主要介紹了JAVA實(shí)現(xiàn)將磁盤中所有空文件夾進(jìn)行刪除的代碼,需要的朋友可以參考下
    2017-06-06
  • SpringCloud?Bus組件的使用配置詳解

    SpringCloud?Bus組件的使用配置詳解

    bus稱之為springcloud中消息總線,主要用來在微服務(wù)系統(tǒng)中實(shí)現(xiàn)遠(yuǎn)端配置更新時(shí)通過廣播形式通知所有客戶端刷新配置信息,避免手動(dòng)重啟服務(wù)的工作,這篇文章主要介紹了SpringCloud?Bus組件的使用,需要的朋友可以參考下
    2022-03-03
  • Java代碼實(shí)現(xiàn)循環(huán)隊(duì)列的示例代碼

    Java代碼實(shí)現(xiàn)循環(huán)隊(duì)列的示例代碼

    隊(duì)列作為基礎(chǔ)的數(shù)據(jù)結(jié)構(gòu),是程序員的入門課。也是所有程序員必須掌握的一種數(shù)據(jù)結(jié)構(gòu),隊(duì)列在程序中廣泛應(yīng)用,因此我們應(yīng)該對隊(duì)列有深入的了解,接下來我們通過代碼來對隊(duì)列這種數(shù)據(jù)結(jié)構(gòu)進(jìn)行深度解析,感興趣的朋友一起看看吧
    2021-09-09
  • Spring 加載多份配置文件的問題及解決方案

    Spring 加載多份配置文件的問題及解決方案

    在Spring項(xiàng)目中,有時(shí)候需要加載多份配置文件以簡化復(fù)雜的配置管理,解決這一問題的方法是使用spring.config.import屬性,通過這種方式,可以在主配置文件中指定額外的配置文件路徑,支持文件、classpath或URL形式的路徑,感興趣的朋友跟隨小編一起看看吧
    2024-10-10
  • 使用springboot在工具類中讀取配置文件(ClassPathResource)

    使用springboot在工具類中讀取配置文件(ClassPathResource)

    這篇文章主要介紹了使用springboot在工具類中讀取配置文件(ClassPathResource),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-08-08
  • 排查Java應(yīng)用內(nèi)存泄漏問題的步驟

    排查Java應(yīng)用內(nèi)存泄漏問題的步驟

    這篇文章主要介紹了排查Java應(yīng)用內(nèi)存泄漏問題的步驟,幫助大家更好的理解和學(xué)習(xí)Java,感興趣的朋友可以了解下
    2020-11-11
  • Java復(fù)習(xí)之集合框架總結(jié)

    Java復(fù)習(xí)之集合框架總結(jié)

    本篇文章主要介紹了Java復(fù)習(xí)之集合框架總結(jié),小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-09-09
  • Jmeter環(huán)境搭建及安裝步驟

    Jmeter環(huán)境搭建及安裝步驟

    Jmeter是純Java開發(fā)的,能夠運(yùn)行Java程序的系統(tǒng)一般都可以運(yùn)行Jmeter,本文以windows下安裝步驟為例分步驟給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧
    2021-12-12
  • idea中maven項(xiàng)目模塊變成灰色原因及解決方案

    idea中maven項(xiàng)目模塊變成灰色原因及解決方案

    這篇文章主要介紹了idea中maven項(xiàng)目模塊變成灰色原因及解決方案,文中通過圖文結(jié)合的方式給大家講解的非常詳細(xì),對大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2024-03-03
  • java 使用poi 導(dǎo)入Excel數(shù)據(jù)到數(shù)據(jù)庫的步驟

    java 使用poi 導(dǎo)入Excel數(shù)據(jù)到數(shù)據(jù)庫的步驟

    這篇文章主要介紹了java 使用poi 導(dǎo)入Excel 數(shù)據(jù)到數(shù)據(jù)庫的步驟,幫助大家更好的理解和使用Java,感興趣的朋友可以了解下
    2020-12-12

最新評(píng)論