• <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>

    Java面試之JVM復習(一)

    JVM Java虛擬機,包含一套字節碼指令集、寄存器、棧、垃圾回收、堆,存儲方法域。JVM是運行在操作系統上的,與硬件沒有直接的交互。Java源文件,通過編譯器,能夠生成相應的.Class文件,也就是字節碼文件,而字節碼文件又通過java虛擬機中的解釋器,編譯成特定機器上的機器碼。每一種平臺上的解釋器是不同的,這也是java為什么能跨平臺運行的原因了。

    方式/步調

    1. 1

      當一個程序從起頭運行,這是虛擬機就起頭實例化了,多個程序啟動就會存在多個虛擬機實例。程序退出或者封閉,則虛擬機實例消亡,多個虛擬機之間的數據不克不及共享

    2. 2

      線程是指程序執行過程中一個線程實體。JVM許可一個應用并發執行多個線程。

      Hotspot JVM中的Java線程與原生操作系統線程有直接的映射關系。當線程當地存儲、緩沖區分派、同步對象、棧、程序計較器等籌辦好今后,就會建立一個操作系統原生線程。

      java線程竣事,原生線程隨之被收受接管。操作系統負責調劑所有線程,并把它們分派到任何可用CPU上。當原生線程初始化完畢,就挪用java線程的run()方式。當線程竣事時,會釋放原生線程和java線程的所有資本。

    3. 3

      JVM內存區域本家兒要分為線程私有區域:程序計數器、虛擬機棧、當地方式區。

      線程共享區域:java堆、方式區、直接內存。

    4. 4

      線程私稀有據區域生命周期與線程不異,依靠用戶線程的啟動/竣事,而建立/銷毀(在Hotspot VM 內,每個線程都與操作系統的當地線程直接映射,是以這部門內存區域的存/否跟從當地線程的生/死對應的)。

      線程共享區域隨虛擬機的啟動/封閉而建立/銷毀。

    5. 5

      程序計數器(線程私有)

    6. 6

      當地方式區(線程私有)

      END
    • 發表于 2020-04-30 19:00
    • 閱讀 ( 873 )
    • 分類:其他類型

    你可能感興趣的文章

    相關問題

    0 條評論

    請先 登錄 后評論
    admin
    admin

    0 篇文章

    作家榜 ?

    1. xiaonan123 189 文章
    2. 湯依妹兒 97 文章
    3. luogf229 46 文章
    4. jy02406749 45 文章
    5. 小凡 34 文章
    6. Daisy萌 32 文章
    7. 我的QQ3117863681 24 文章
    8. 華志健 23 文章

    聯系我們:uytrv@hotmail.com 問答工具
  • <noscript id="ecgc0"><kbd id="ecgc0"></kbd></noscript>
    <menu id="ecgc0"></menu>
  • <tt id="ecgc0"></tt>
    久久久久精品国产麻豆