卖逼视频免费看片|狼人就干网中文字慕|成人av影院导航|人妻少妇精品无码专区二区妖婧|亚洲丝袜视频玖玖|一区二区免费中文|日本高清无码一区|国产91无码小说|国产黄片子视频91sese日韩|免费高清无码成人网站入口

java空間(jvm元空間與堆和棧的區(qū)別?)

jvm元空間與堆和棧的區(qū)別?1內(nèi)存分配策略1)靜態(tài)存儲:在編譯時確定每個數(shù)據(jù)目標(biāo)在運(yùn)行時的存儲空間需求(代碼中沒有不可變的數(shù)據(jù)結(jié)構(gòu),沒有嵌套遞歸)。2)堆棧存儲:編譯時數(shù)據(jù)需求未知,運(yùn)行時確定模塊入口

java空間(jvm元空間與堆和棧的區(qū)別?)

jvm元空間與堆和棧的區(qū)別?

1內(nèi)存分配策略

1)靜態(tài)存儲:在編譯時確定每個數(shù)據(jù)目標(biāo)在運(yùn)行時的存儲空間需求(代碼中沒有不可變的數(shù)據(jù)結(jié)構(gòu),沒有嵌套遞歸)。

2)堆棧存儲:編譯時數(shù)據(jù)需求未知,運(yùn)行時確定模塊入口,動態(tài)分配存儲。當(dāng)你在運(yùn)行時進(jìn)入一個程序模塊時,你必須知道程序模塊需要的數(shù)據(jù)區(qū)的大小,然后才能分配它的內(nèi)存。

3)堆存儲:編譯時和運(yùn)行時無法確定模塊入口,動態(tài)分配。

2Java內(nèi)存模型中的堆和棧

1)它們之間的聯(lián)系:引用對象和數(shù)組時,棧中定義的變量存儲的是堆中目標(biāo)的第一個地址。

2)兩者的區(qū)別:

(1)管理模式:棧自動釋放(對應(yīng)方法完成),棧需要GC(垃圾收集機(jī)制)。

(2)空間大?。憾汛笥跅!?/p>

(3)碎片:堆棧產(chǎn)生的碎片比堆產(chǎn)生的碎片要小得多。

(4)分配方式:Stack支持靜態(tài)和動態(tài)分配,而heap只能動態(tài)分配。

(5)效率:堆比棧效率低。

(6)棧是線程私有的,堆是線程共享的。