Java自動管理機(jī)制

java內(nèi)存區(qū)域與內(nèi)存溢出異常

運(yùn)行時(shí)數(shù)據(jù)區(qū)域

java在運(yùn)行時(shí)主要可以分為兩類,之類是線程獨(dú)享的泣栈,另外就是線程共享的铝量。下面我分別介紹這里面的數(shù)據(jù)區(qū)域

程序計(jì)數(shù)器:

記錄jvm字節(jié)碼指令的地址属百,我自己的理解就是每個(gè)線程在執(zhí)行代碼的時(shí)候秃症,一條命令在字節(jié)碼文件中對應(yīng)一條字節(jié)碼候址,然后你要執(zhí)行下一句指令,就需要知道前一條指令的地址种柑,程序計(jì)數(shù)器就起到記錄這個(gè)指令地址的作用宗雇。需注意,程序計(jì)數(shù)器不會拋出OutOfMemoryError

虛擬機(jī)棧(本地方法棧):

這兩個(gè)區(qū)域大致是差不多的莹规,虛擬機(jī)棧是執(zhí)行java方法,本地方法棧是執(zhí)行native方法(本地方法)泌神。

然后他們是java(native)方法在運(yùn)行時(shí)啟動的良漱,運(yùn)行時(shí)會創(chuàng)建一個(gè)棧幀舞虱,里面包含局部變量表、操作數(shù)棧母市、動態(tài)鏈接等信息矾兜,局部變量表中包含基本數(shù)據(jù)類型、對象引用類型患久,就是我們所說的棧椅寺。方法調(diào)用和結(jié)束其實(shí)是一個(gè)棧幀入棧出棧操作

上面三個(gè)是線程獨(dú)享的


java堆:

這是我們平常所說的堆,幾乎所有的對象實(shí)例都存放在這里蒋失,是GC時(shí)的重點(diǎn)區(qū)域(還有下面提到的方法區(qū))

方法區(qū):

里面存放的是虛擬機(jī)加載得到的類信息返帕,靜態(tài)變量,常量和編譯器編譯后的代碼

常量池:方法區(qū)的一部分篙挽,在之后的class文件結(jié)構(gòu)著重講解

直接內(nèi)存:

又被稱作本地內(nèi)存荆萤,就是在我們的計(jì)算機(jī)里面,為java虛擬機(jī)分配好了一個(gè)運(yùn)行內(nèi)存時(shí)铣卡,然而每個(gè)線程的數(shù)據(jù)是先存放在這個(gè)本地內(nèi)存上的链韭,通過對運(yùn)行內(nèi)存共享而達(dá)到線程間數(shù)據(jù)同步,對線程間可見的目的

內(nèi)存泄露煮落、溢出

內(nèi)存泄露、溢出對于學(xué)習(xí)java虛擬機(jī)來講量淌,真的很重要裙秋,只有懂了這些基礎(chǔ),你才能夠知道java虛擬機(jī)調(diào)優(yōu)時(shí)候?yàn)槭裁匆菢幼觥?/p>

內(nèi)存溢出:說簡單點(diǎn)就是虛擬機(jī)分配的內(nèi)存不夠用了。

內(nèi)存泄露:主要在堆區(qū)發(fā)生扳剿,表現(xiàn)為原先創(chuàng)建的應(yīng)該回收對象不夠被虛擬機(jī)回收耕餐,導(dǎo)致可用的內(nèi)存變得越來越少

接下來講講在配置虛擬機(jī)時(shí)為防止內(nèi)存溢出的幾個(gè)重要參數(shù)

1释簿、-xmx表示分配的最大堆內(nèi)存 -xms表示最小堆內(nèi)存,如果相等表示不允許虛擬機(jī)動態(tài)擴(kuò)展堆內(nèi)存

2夺巩、-xss表示每個(gè)線程分配的棧容量贞让,需注意這里分配越大,越容易出現(xiàn)內(nèi)存溢出柳譬。原因是被堆內(nèi)存喳张,方法區(qū)留下的內(nèi)存大致很固定了,每個(gè)線程分配的棧容量越大美澳,在持續(xù)不斷的線程建立過程中销部,必定導(dǎo)致內(nèi)存不夠用可采用的處理方法:用減少內(nèi)存換取線程

3摸航、-XX:PermSize -MaxPermSize用來設(shè)置最大方法區(qū)內(nèi)存

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市柴墩,隨后出現(xiàn)的幾起案子忙厌,更是在濱河造成了極大的恐慌,老刑警劉巖江咳,帶你破解...
    沈念sama閱讀 211,348評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異哥放,居然都是意外死亡歼指,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,122評論 2 385
  • 文/潘曉璐 我一進(jìn)店門甥雕,熙熙樓的掌柜王于貴愁眉苦臉地迎上來踩身,“玉大人,你說我怎么就攤上這事社露⌒瑁” “怎么了?”我有些...
    開封第一講書人閱讀 156,936評論 0 347
  • 文/不壞的土叔 我叫張陵峭弟,是天一觀的道長附鸽。 經(jīng)常有香客問我,道長瞒瘸,這世上最難降的妖魔是什么坷备? 我笑而不...
    開封第一講書人閱讀 56,427評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮情臭,結(jié)果婚禮上省撑,老公的妹妹穿的比我還像新娘。我一直安慰自己俯在,他們只是感情好竟秫,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,467評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著跷乐,像睡著了一般肥败。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上劈猿,一...
    開封第一講書人閱讀 49,785評論 1 290
  • 那天拙吉,我揣著相機(jī)與錄音,去河邊找鬼揪荣。 笑死筷黔,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的仗颈。 我是一名探鬼主播佛舱,決...
    沈念sama閱讀 38,931評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼椎例,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了请祖?” 一聲冷哼從身側(cè)響起订歪,我...
    開封第一講書人閱讀 37,696評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎肆捕,沒想到半個(gè)月后刷晋,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,141評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡慎陵,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,483評論 2 327
  • 正文 我和宋清朗相戀三年眼虱,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片席纽。...
    茶點(diǎn)故事閱讀 38,625評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡捏悬,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出润梯,到底是詐尸還是另有隱情过牙,我是刑警寧澤,帶...
    沈念sama閱讀 34,291評論 4 329
  • 正文 年R本政府宣布纺铭,位于F島的核電站寇钉,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏彤蔽。R本人自食惡果不足惜摧莽,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,892評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望顿痪。 院中可真熱鬧镊辕,春花似錦、人聲如沸蚁袭。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽揩悄。三九已至卖哎,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間删性,已是汗流浹背亏娜。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蹬挺,地道東北人维贺。 一個(gè)月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像巴帮,于是被迫代替她去往敵國和親溯泣。 傳聞我的和親對象是個(gè)殘疾皇子虐秋,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,492評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 寫在前面本文介紹的Java虛擬機(jī)(JVM)的自動內(nèi)存管理機(jī)制主要是參照《深入理解Java虛擬機(jī)》(第2版)一書中的...
    EakonZhao閱讀 4,237評論 5 48
  • 從三月份找實(shí)習(xí)到現(xiàn)在,面了一些公司垃沦,掛了不少客给,但最終還是拿到小米、百度肢簿、阿里靶剑、京東、新浪池充、CVTE抬虽、樂視家的研發(fā)崗...
    時(shí)芥藍(lán)閱讀 42,211評論 11 349
  • JVM內(nèi)存模型Java虛擬機(jī)(Java Virtual Machine=JVM)的內(nèi)存空間分為五個(gè)部分,分別是: ...
    光劍書架上的書閱讀 2,493評論 2 26
  • 喜歡這句:對“獨(dú)立”的認(rèn)知絕不能膚淺地駐足于——她需要你的時(shí)候你可以不在纵菌,你忙的時(shí)候不會被打擾——這種膚淺需求之上...
    435bedc83cab閱讀 202評論 0 1
  • 那是個(gè)美麗的秋季,我們相遇了休涤。 看到你的那一霎那咱圆,也不知為什么,心里涌上一絲歡喜功氨,破天荒地留下自己的電話序苏,帶著莫名...
    柳浪聞鶯_b736閱讀 236評論 0 2