Java記憶體地區

來源:互聯網
上載者:User

標籤:virt   art   gpo   rtu   執行   計數器   over   資訊   char   

Java運行時資料區域

Java虛擬機器所管理的記憶體包括以下幾個運行時資料區域,如:

程式計數器

  程式計數器(Program Counter Register)是一塊較小的記憶體地區,是當前線程執行的位元組碼的行號指標。程式計數器是一塊私人的記憶體地區,每個線程都有一個獨立的程式計數器。如果線程正在執行的是一個Java方法,這個程式計數器記錄的是正在執行的虛擬機器位元組碼指令地址;如果正在執行的是Native方法,這個計數器值則為空白(Undefined)。程式計數器所在的記憶體地區是唯一一個在Java虛擬機器沒有OOM(OutOfMemoryError)情況的地區。

Java虛擬機器棧

  Java虛擬機器棧(Java Virtual Machine Stack)也是線程私人的,生命週期與線程同步。虛擬機器棧描述的是Java方法執行的記憶體模型:每個方法執行的同時會建立一個棧幀用於儲存局部變數表、運算元棧、動態鏈、方法出口等資訊。每個方法從調用直至執行完成的過程,就對應著一個棧幀在虛擬機器棧中入棧到出棧的過程。
  虛擬機器棧記憶體地區會出現兩種異常:
    1.當線程請求的棧深度大於虛擬機器允許的深度,會拋出StackOverflowError異常;
    2.當改地區需要擴充時申請不到足夠的記憶體,就會拋出OOM(OutOfMemoryErro)異常。

Java記憶體地區

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.