亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

什么是運行時數據區

發布時間:2021-10-11 17:56:18 來源:億速云 閱讀:173 作者:iii 欄目:編程語言

這篇文章主要講解了“什么是運行時數據區”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“什么是運行時數據區”吧!

前言

本節主要講的是運行時數據區,也就是下圖這部分,它是在類加載完成后的階段

什么是運行時數據區

當我們通過前面的:類的加載-> 驗證 -> 準備 -> 解析 -> 初始化 這幾個階段完成后,就會用到執行引擎對我們的類進行使用,同時執行引擎將會使用到我們運行時數據區

什么是運行時數據區

也就是大廚做飯,我們把大廚后面的東西(切好的菜,刀,調料),比作是運行時數據區。而廚師可以類比于執行引擎,將通過準備的東西進行制作成精美的菜品

什么是運行時數據區

內存是非常重要的系統資源,是硬盤和CPU的中間倉庫及橋梁,承載著操作系統和應用程序的實時運行JVM內存布局規定了Java在運行過程中內存申請、分配、管理的策略,保證了JVM的高效穩定運行。不同的JVM對于內存的劃分方式和管理機制存在著部分差異(主要針對方法區)。結合JVM虛擬機規范,來探討一下經典的JVM內存布局。

我們通過磁盤或者網絡IO得到的數據,都需要先加載到內存中,然后CPU從內存中獲取數據進行讀取,也就是說內存充當了CPU和磁盤之間的橋梁

運行時數據區的完整圖

什么是運行時數據區

  • Java虛擬機定義了若干種程序運行期間會使用到的運行時數據區,其中有一些會隨著虛擬機啟動而創建,隨著虛擬機退出而銷毀。另外一些則是與線程一一對應的,這些與線程對應的數據區域會隨著線程開始和結束而創建和銷毀。

  • 灰色的為單獨線程私有的,紅色的為多個線程共享的。即:

    • 每個線程:獨立包括程序計數器、棧、本地棧。

    • 線程間共享:堆、堆外內存(永久代或元空間(理解為方法區)、代碼緩存) 

什么是運行時數據區

關于線程間共享的說明:

什么是運行時數據區

每個JVM只有一個Runtime實例。即為運行時環境,相當于內存結構的中間的那個框框:運行時環境

線程

  • 線程是一個程序里的運行單元。JVM允許一個應用有多個線程并行的執行。 

  • 在Hotspot JVM里,每個線程都與操作系統的本地線程直接映射。

    • 當一個Java線程準備好執行以后,此時一個操作系統的本地線程也同時創建。Java線程執行終止后,本地線程也會回收。

  • 操作系統負責所有線程的安排調度到任何一個可用的CPU上。一旦本地線程初始化成功,它就會調用Java線程中的run()方法。

JVM系統線程

  • 如果你使用jconsole或者是任何一個調試工具,都能看到在后臺有許多線程在運行。這些后臺線程不包括調用public static void main(String[])的main線程以及所有這個main線程自己創建的線程。

  • 這些主要的后臺系統線程在Hotspot JVM里主要是以下幾個:

    • 虛擬機線程:這種線程的操作是需要JVM達到安全點才會出現。這些操作必須在不同的線程中發生的原因是他們都需要JVM達到安全點,這樣堆才不會變化。這種線程的執行類型包括"stop-the-world"的垃圾收集,線程棧收集,線程掛起以及偏向鎖撤銷。

    • 周期任務線程:這種線程是時間周期事件的體現(比如中斷),他們一般用于周期性操作的調度執行。

    • GC線程:這種線程對在JVM里不同種類的垃圾收集行為提供了支持。

    • 編譯線程:這種線程在運行時會將字節碼編譯成到本地代碼。

    • 信號調度線程:這種線程接收信號并發送給JVM,在它內部通過調用適當的方法進行處理。

感謝各位的閱讀,以上就是“什么是運行時數據區”的內容了,經過本文的學習后,相信大家對什么是運行時數據區這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

梁山县| 满城县| 海原县| 白水县| 溧阳市| 广西| 黄冈市| 瑞金市| 耿马| 上蔡县| 桓仁| 武宁县| 武鸣县| 辛集市| 商城县| 监利县| 治多县| 辽宁省| 岱山县| 马边| 灵武市| 镇原县| 瓮安县| 拜城县| 新营市| 安康市| 东宁县| 新郑市| 佛学| 都昌县| 称多县| 阳信县| 陕西省| 湖州市| 遵化市| 武隆县| 汽车| 永修县| 岳阳市| 永平县| 三原县|