1. 程式人生 > 其它 >蘇寧易購三面:寫一個指令碼獲取Linux系統CPU的詳細資訊,並說出原理!

蘇寧易購三面:寫一個指令碼獲取Linux系統CPU的詳細資訊,並說出原理!

JVM垃圾回收機制

JVM的組成

程式計數器

執行class檔案到達哪一行了,執行緒私有的,不會發生記憶體洩漏。

記憶體管理最大的一部分,當程式裡new出一個物件,或者宣告一個數組時,都會在堆記憶體中申請出一塊空間。

分為新生代、年老代、永久代。

發生異常時是因為往裡面新增的物件太多。

虛擬機器棧

執行緒私有,與執行緒共存。

發生異常時是因為方法進去後無法出棧。

本地方法棧

直接跟作業系統打交道,不載入Java方法,與虛擬機器棧互相呼叫。

方法區

記憶體分配與回收策略

判斷物件已死的演算法

引用計數器演算法(Java中現在不使用)

可達性分析演算法(目前在使用)

再談引用

垃圾回收演算法

標記-清除演算法

標記-整理演算法

複製演算法

分代垃圾回收

垃圾收集器

Serial收集器

PerNew收集器(Serial收集器的多執行緒版本)

Parallel Scavenge收集器

Serial Old收集器

Serial收集器的老年代版本。

Parallel Old收集器

Parallel Scavenge收集器老年代版本。

CMS收集器(邊汙染邊清除)

G1收集器

常見引數分配

參考資料