国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

jvm內存區域

daydream / 1186人閱讀

摘要:在虛擬機在運行過程中,它的內存區域被分成若干塊,其中包括程序計數器虛擬機棧本地方法棧堆以及方法區等。如下圖下面將分別介紹以上幾種內存區域的作用程序計數器程序計數器可以看作是某一線程執行的字節碼的行號指示器。這是垃圾回收的主要區域。

在java虛擬機在運行過程中,它的內存區域被分成若干塊,其中包括程序計數器、虛擬機棧、本地方法棧、堆、以及方法區等。如下圖

下面將分別介紹以上幾種內存區域的作用:

程序計數器
程序計數器可以看作是某一線程執行的字節碼的行號指示器。它用作使每條線程切換后能夠恢復到正確的執行位置,因此這是線程私有的。
如果執行的是一個java方法,計數器記錄的就是正在執行的字節碼指令的地址;如果是native方法,那么計數器為空(null)。

虛擬機棧
生命周期與線程相同,與計數器一樣是線程私有的。它用于存儲局部變量表、操作數棧、動態鏈接、方法出口等。

本地方法棧
與虛擬機棧類似,不同的是這是Native方法的棧。


這是一塊線程共享的內存區域。它唯一的作用是存放對象實例。
這是垃圾回收的主要區域。根據回收算法,堆可細分為新生代和老年代。剛剛創建的對象在新生代中創建,經過多次垃圾回收仍然存活的對象進入老年代。大對象(需要大量連續內存的java對象)直接進入老年代。

方法區(永久代)
與堆一樣,這也是線程共享的區域。它用于存儲已被加載的類信息、常量、靜態變量、即時編譯器編譯后的代碼等數據。
其中,運行時常量池是方法區的一部分,,用于存放編譯期生成的字面量和符號引用。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/71241.html

相關文章

  • JVM系列(一):深入詳解JVM 內存區域總結!

    摘要:一內存區域虛擬機在運行時,會把內存空間分為若干個區域,根據虛擬機規范版的規定,虛擬機所管理的內存區域分為如下部分方法區堆內存虛擬機棧本地方法棧程序計數器。前言 在JVM的管控下,Java程序員不再需要管理內存的分配與釋放,這和在C和C++的世界是完全不一樣的。所以,在JVM的幫助下,Java程序員很少會關注內存泄露和內存溢出的問題。但是,一旦JVM發生這些情況的時候,如果你不清楚JVM內存的...

    Aldous 評論0 收藏0
  • jvm基礎篇一之內存區域

    摘要:堆區堆是虛擬機所管理的內存中最大的一塊,它是被所有線程共享的一塊內存區域,該區域在虛擬機啟動的時候創建。 運行時數據區域 ? ?想要了解jvm,那對其內存分配管理的學習是必不可少的;java虛擬機在執行java程序的時候會把它所管理的內存劃分成若干數據區域。這些區域有著不同的功能、用途、創建/銷毀時間。java虛擬機所分配管理的內存區域如圖1所示 程序計數器 ? ?程序計數器是一塊比較...

    Zachary 評論0 收藏0
  • 萬萬沒想到,JVM內存結構的面試題可以問的這么難?

    摘要:方法區在實際內存空間站可以是不連續的。這一規定,可以說是給了虛擬機廠商很大的自由。但是值得注意的是,堆其實還未每一個線程單獨分配了一塊空間,這部分空間在分配時是線程獨享的,在使用時是線程共享的。 在我的博客中,之前有很多文章介紹過JVM內存結構,相信很多看多我文章的朋友對這部分知識都有一定的了解了。 那么,請大家嘗試著回答一下以下問題: 1、JVM管理的內存結構是怎樣的? 2、不同的...

    CloudwiseAPM 評論0 收藏0
  • JVM 探究(一):JVM內存模型概念模型

    摘要:作為一個程序員,不了解內存模型就不能寫出能夠充分利用內存的代碼。程序計數器是在電腦處理器中的一個寄存器,用來指示電腦下一步要運行的指令序列。在虛擬機中,本地方法棧和虛擬機棧是共用同一塊內存的,不做具體區分。 作為一個 Java 程序員,不了解 Java 內存模型就不能寫出能夠充分利用內存的代碼。本文通過對 Java 內存模型的介紹,讓讀者能夠了解 Java 的內存的分配情況,適合 Ja...

    cnTomato 評論0 收藏0
  • JVM內存模型與運行時數據區域

    摘要:內存模型和運行時數據區域的關系主內存對應著堆,工作內存對應著棧。在的單例模式中有運用到二運行時數據區域內存區域因為的運行時數據區域一直在改善,所以不同版本之間會有不同。 一、java內存模型 showImg(https://segmentfault.com/img/remote/1460000016694250?w=1810&h=941); java定義內存模型的目的是:為了屏蔽各種...

    canopus4u 評論0 收藏0
  • Java GC

    摘要:對字節碼文件進行解釋執行,把字節碼翻譯成相關平臺上的機器指令。使用命令可對字節碼文件以及配置文件進行打包可對一個由多個字節碼文件和配置文件等資源文件構成的項目進行打包。和不存在永久代這種說法。 Java技術體系 從廣義上講,Clojure、JRuby、Groovy等運行于Java虛擬機上的語言及其相關的程序都屬于Java技術體系中的一員。如果僅從傳統意義上來看,Sun官方所定義的Jav...

    justCoding 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<