国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

JVM運行時數(shù)據(jù)區(qū)(下篇)

這篇具有很好參考價值的文章主要介紹了JVM運行時數(shù)據(jù)區(qū)(下篇)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

?緊接上篇:JVM運行時數(shù)據(jù)區(qū)(上篇)-CSDN博客?

  • 一般Java程序中堆內(nèi)存是空間最大的一塊內(nèi)存區(qū)域。創(chuàng)建出來的對象都存在于堆上。
  • 棧上的局部變量表中,可以存放堆上對象的引用。靜態(tài)變量也可以存放堆對象的引用,通過靜態(tài)變量就可以實現(xiàn)對象在線程之間共享。
  • 字符串常量池,存儲字符串的常量。

JVM運行時數(shù)據(jù)區(qū)(下篇),jvm

  • 堆空間有三個需要關注的值,used total max。
  • used指的是當前已使用的堆內(nèi)存,total是java虛擬機已經(jīng)分配的可用堆內(nèi)存,max是java虛擬機可以分配的最大堆內(nèi)存。
  • 當total達到max時說明可分配內(nèi)容已滿,注意此時并不代表OOM!

JVM運行時數(shù)據(jù)區(qū)(下篇),jvm

方法區(qū)

方法區(qū)是Java虛擬機規(guī)范中提出來的一個虛擬機概念,在HotSpot不同版本中會用永久代或者元空間來實現(xiàn)。方法區(qū)主要存放的是基礎信息,包含:

  • 每一個加載的類的元信息(基礎信息)。
  • 運行時常量池,保存了字節(jié)碼文件中的常量池內(nèi)容,避免常量內(nèi)容重復創(chuàng)建減少內(nèi)存開銷。
ps:jdk1.8

JVM運行時數(shù)據(jù)區(qū)(下篇),jvm

總結

JVM運行時數(shù)據(jù)區(qū)(下篇),jvm

ps:jdk8

運行時數(shù)據(jù)區(qū)指的是JVM所管理的內(nèi)存區(qū)域,其中分成兩大類: 文章來源地址http://www.zghlxwxcb.cn/news/detail-796175.html

  • 線程共享 – 方法區(qū)、堆
    • 方法區(qū):存放每一個加載的類的元信息、運行時常量池、字符串常量池。
    • 堆:存放創(chuàng)建出來的對象。
  • 線程不共享 – 本地方法棧、虛擬機棧、程序計數(shù)器
    • 本地方法棧和虛擬機棧都存放了線程中執(zhí)行方法時需要使用的基礎數(shù)據(jù)。
    • 程序計數(shù)器存放了當前線程執(zhí)行的字節(jié)碼指令在內(nèi)存中的地址。
    • 直接內(nèi)存主要是NIO使用,由操作系統(tǒng)直接管理,不屬于JVM內(nèi)存。

到了這里,關于JVM運行時數(shù)據(jù)區(qū)(下篇)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【jvm】運行時數(shù)據(jù)區(qū)

    【jvm】運行時數(shù)據(jù)區(qū)

    一、運行時數(shù)據(jù)區(qū) 一、作用 1.內(nèi)存是非常重要的系統(tǒng)資源,是硬盤和CPU 的中間倉庫及橋梁,承載著操作系統(tǒng)和應用程序的實時運行。JVM內(nèi)存布局規(guī)定了Java在運行過程中內(nèi)存申請、分配、管理的策略,保證了JVM的高效穩(wěn)定運行。不同的JVM對于內(nèi)存的劃分方式和管理機制存在著

    2024年02月10日
    瀏覽(20)
  • JVM運行時數(shù)據(jù)區(qū)(上篇)

    JVM運行時數(shù)據(jù)區(qū)(上篇)

    JVM運行時數(shù)據(jù)區(qū)可分為線程共享的堆,方法區(qū)和線程獨享的虛擬機棧、本地方法棧、程序計時器此外還有一個單獨的直接內(nèi)存,如下圖所述: 程序計數(shù)器(Program Counter Register)也叫PC寄存器,每個線程會通過程序計數(shù)器記錄當前要執(zhí)行的的字節(jié)碼指令的地址。 起始時計數(shù)器記

    2024年01月17日
    瀏覽(19)
  • JVM系列 運行時數(shù)據(jù)區(qū)

    JVM系列 運行時數(shù)據(jù)區(qū)

    第一章 運行區(qū)實驗 JVM(Java虛擬機)運行區(qū)是Java程序在運行過程中被JVM所管理的內(nèi)存區(qū)域。它包括了Java程序運行時的堆(Heap)、棧(Stack)、方法區(qū)(Method Area)、本地方法棧(Native Method Stacks)、程序計數(shù)器和直接內(nèi)存(Direct Memory)等部分。 堆(Heap)是Java程序運行時用于

    2024年02月08日
    瀏覽(12)
  • JVM內(nèi)存模型/運行時數(shù)據(jù)區(qū)域

    JVM內(nèi)存模型/運行時數(shù)據(jù)區(qū)域

    java虛擬機管理這塊內(nèi)存,所以我們也叫運行時數(shù)據(jù)區(qū)域 這里按線程是否共享來分類,所謂線程不共享就是每個線程里面都會配一套 程序計數(shù)器 棧, 互相不干涉。 而方法區(qū)和堆是線程所有共享 意味著只有一個(這里注意堆是實際概念 方法區(qū)是一個虛擬概念) 注意:程序計

    2024年01月18日
    瀏覽(25)
  • 二、JVM-深入運行時數(shù)據(jù)區(qū)

    二、JVM-深入運行時數(shù)據(jù)區(qū)

    計算機體系結構 JVM的設計實際上遵循了遵循馮諾依曼計算機結構 CPU與內(nèi)存交互圖: 硬件一致性協(xié)議: MSI、MESI、MOSI、Synapse、Firely、DragonProtocol 摩爾定律 摩爾定律是由英特爾(Intel)創(chuàng)始人之一戈登·摩爾(Gordon Moore)提出來的。其內(nèi)容為:當價格不變時,集成電路上可容納的晶體

    2024年02月14日
    瀏覽(18)
  • JVM運行時五大數(shù)據(jù)區(qū)域詳解

    JVM運行時五大數(shù)據(jù)區(qū)域詳解

    ? ? ? ? java虛擬機再執(zhí)行Java程序的時候把它所擁有的內(nèi)存區(qū)域劃分了若干個數(shù)據(jù)區(qū)域。這些區(qū)域有著不同的功能,各司其職。這些區(qū)域不但功能不同,創(chuàng)建、銷毀時間也不同。有些區(qū)域為線程私有,如:每個線程都有自己的程序計數(shù)器,則程序計數(shù)器隨著用戶線程創(chuàng)建而創(chuàng)

    2024年02月13日
    瀏覽(26)
  • 說一下 JVM 運行時數(shù)據(jù)區(qū) ?

    說一下 JVM 運行時數(shù)據(jù)區(qū) ?

    目錄 一、程序計數(shù)器(Program Counter Register) 二、Java 虛擬機棧(Java Virtual Machine Stacks) 三、本地方法棧(Native Method Stack) 四、Java 堆(Java Heap) 五、方法區(qū)(Methed Area) 當前線程所執(zhí)行的字節(jié)碼的行號指示器,字節(jié)碼解析器的工作是通過改變這個計數(shù)器的值,來選取下一條

    2024年02月21日
    瀏覽(16)
  • JVM運行時數(shù)據(jù)區(qū)——本地方法棧

    1.本地方法棧 本地方法棧里面存放的是 調(diào)用 的本地(Native)的方法,例如hashcode()。 本地方法棧也是線程 私有 的,本地方法是由 C 語言實現(xiàn)的。 如果 線程請求的棧容量 大于 本地方法棧允許的最大容量 則會出現(xiàn) 棧溢出 的問題。 其內(nèi)存空間可以調(diào)整。

    2024年02月16日
    瀏覽(16)
  • JVM—內(nèi)存管理(運行時數(shù)據(jù)區(qū))、垃圾回收

    JVM—內(nèi)存管理(運行時數(shù)據(jù)區(qū))、垃圾回收

    當JVM類加載器加載完字節(jié)碼文件之后,會交給執(zhí)行引擎執(zhí)行,在執(zhí)行的過程中會有一塊JVM內(nèi)存區(qū)域來存放程序運行過程中的數(shù)據(jù),也就是我們圖中放的運行時數(shù)據(jù)區(qū),那這一塊運行時數(shù)據(jù)區(qū)究竟幫我們做了哪些工作?我們常說的線上內(nèi)存泄漏和內(nèi)存溢出是因為什么?我們今兒

    2024年02月13日
    瀏覽(29)
  • JVM運行時數(shù)據(jù)區(qū)之堆空間

    JVM運行時數(shù)據(jù)區(qū)之堆空間

    一個JVM實例只存在一個堆內(nèi)存,堆也是Java內(nèi)存管理的核心區(qū)域。堆區(qū)在 JVM 啟動的時候即被創(chuàng)建 ,其空間大小也就確定了,是 JVM管理的最大一塊內(nèi)存空間 。 《Java虛擬機規(guī)范》中對Java堆的描述是:所有的對象實例以及數(shù)組都應當在運行時分配在堆上。(The heap is the run-time dat

    2024年02月16日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包