java虛擬機(jī)知識

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

  • 程序計(jì)數(shù)器
    程序計(jì)數(shù)器是一塊比較小的內(nèi)存空間怖喻,它可以看成當(dāng)前線程所執(zhí)行的字節(jié)碼的行號指示器充尉。在虛擬機(jī)的概念模型里氛谜,字節(jié)碼解釋器工作時(shí)就是通過改變這個(gè)計(jì)數(shù)器的值來選取下一條需要執(zhí)行的字節(jié)碼命令

  • java虛擬機(jī)棧
    與程序計(jì)數(shù)器一樣燥撞,java虛擬機(jī)棧(java Vritual machine Stacks)也是線程私有的投剥,它的生命周期與線程相同。
    虛擬機(jī)棧描述的是java方法執(zhí)行的內(nèi)存模型提完,每個(gè)方法執(zhí)行的同時(shí)都會創(chuàng)建一個(gè)棧幀(stack frame)可用于存儲局部變量表形纺,操作數(shù)棧,動態(tài)鏈接徒欣,方法出口等信息逐样,每一個(gè)方法從被調(diào)用到完成的過程,就對應(yīng)著一個(gè)棧幀在虛擬機(jī)棧中入棧到出棧的過程。

  • 本地方法棧
    本地方法棧(Native Method Stack )與虛擬機(jī)棧發(fā)揮的作用非常相似脂新,他們之間區(qū)別是虛擬機(jī)棧為虛擬機(jī)執(zhí)行的java方法工作挪捕,而本地方法棧為虛擬機(jī)使用到的Native方法工作

  • java堆
    java堆(java Heap)是java虛擬機(jī)所管理的內(nèi)存中的最大的一塊。此區(qū)域的唯一目的就是存放對象實(shí)例争便,幾乎所有的對象實(shí)例都是在這里分配內(nèi)存

  • 方法區(qū)
    方法區(qū)(Method Area) 與java堆一樣级零,是各個(gè)線程共享的內(nèi)存區(qū)域,它用于存儲已被虛擬機(jī)加載的類信息滞乙,常量奏纪,靜態(tài)變量,即時(shí)編譯器編譯后的代碼等數(shù)據(jù)

  • 運(yùn)行時(shí)常量池
    運(yùn)行時(shí)常量池(Runtime Constant Pool)是方法區(qū)的一部分斩启,class文件除了有類的版本序调,字段,方法兔簇,接口等描述信息之外发绢,還有一項(xiàng)信息是常量池(constant pool table),用于存放編譯期生成的各種字面量和符號引用垄琐,這部分將在類加載后進(jìn)入方法區(qū)的運(yùn)行時(shí)常量區(qū)存放

如何判斷對象死亡

  • 引用計(jì)數(shù)器算法
  • 可達(dá)性分析算法(java虛擬機(jī)使用的方法)
    可達(dá)性分析算法通過一系列的稱為“GC root”的對象作為起始點(diǎn)边酒,從這些節(jié)點(diǎn)開始向下搜索,搜索所走過的路徑稱為引用鏈(Reference Chain)
    可以作為GC root的對象包括
    1.虛擬機(jī)棧中引用的對象
    2.方法區(qū)中類靜態(tài)屬性引用的對象
    3.方法區(qū)域中常量引用的對象
    本地方法棧中JNI引用的對象

垃圾收集算法

1.標(biāo)記清除法

2.復(fù)制算法

3.標(biāo)記-整理算法

垃圾收集器

1.seiral收集器 新生代中使用 復(fù)制算法

2.serial old 收集器 老年代中使用 整理算法

3.ParNew收集器 新生代中使用 serial收集器的多線程版本

4 parallel Scavenge收集器 復(fù)制算法 達(dá)到一個(gè)可控制的吞吐量

5 parallel old parallel scavenge的老年代

6 CMS收集器 (Concurrent Mark Sweep)以獲取回收停頓時(shí)間為目標(biāo)的收集器 標(biāo)記-清除算法

執(zhí)行流程:初始標(biāo)志 -》 并發(fā)標(biāo)志 -》重新標(biāo)志 -》并發(fā)清除

7.G1收集器

特點(diǎn):并行與并發(fā)狸窘,分代收集墩朦,空間整合(整理算法) 可預(yù)測的停頓

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市朦前,隨后出現(xiàn)的幾起案子介杆,更是在濱河造成了極大的恐慌,老刑警劉巖韭寸,帶你破解...
    沈念sama閱讀 211,817評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件春哨,死亡現(xiàn)場離奇詭異,居然都是意外死亡恩伺,警方通過查閱死者的電腦和手機(jī)赴背,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,329評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來晶渠,“玉大人凰荚,你說我怎么就攤上這事“” “怎么了便瑟?”我有些...
    開封第一講書人閱讀 157,354評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長番川。 經(jīng)常有香客問我到涂,道長脊框,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,498評論 1 284
  • 正文 為了忘掉前任践啄,我火速辦了婚禮浇雹,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘屿讽。我一直安慰自己昭灵,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,600評論 6 386
  • 文/花漫 我一把揭開白布伐谈。 她就那樣靜靜地躺著烂完,像睡著了一般。 火紅的嫁衣襯著肌膚如雪衩婚。 梳的紋絲不亂的頭發(fā)上窜护,一...
    開封第一講書人閱讀 49,829評論 1 290
  • 那天,我揣著相機(jī)與錄音非春,去河邊找鬼。 笑死缓屠,一個(gè)胖子當(dāng)著我的面吹牛奇昙,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播敌完,決...
    沈念sama閱讀 38,979評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼储耐,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了滨溉?” 一聲冷哼從身側(cè)響起什湘,我...
    開封第一講書人閱讀 37,722評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎晦攒,沒想到半個(gè)月后闽撤,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,189評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡脯颜,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,519評論 2 327
  • 正文 我和宋清朗相戀三年哟旗,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片栋操。...
    茶點(diǎn)故事閱讀 38,654評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡闸餐,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出矾芙,到底是詐尸還是另有隱情舍沙,我是刑警寧澤,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布剔宪,位于F島的核電站拂铡,受9級特大地震影響壹无,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜和媳,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,940評論 3 313
  • 文/蒙蒙 一格遭、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧留瞳,春花似錦拒迅、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,762評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至硬梁,卻和暖如春前硫,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背荧止。 一陣腳步聲響...
    開封第一講書人閱讀 31,993評論 1 266
  • 我被黑心中介騙來泰國打工屹电, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人跃巡。 一個(gè)月前我還...
    沈念sama閱讀 46,382評論 2 360
  • 正文 我出身青樓危号,卻偏偏與公主長得像,于是被迫代替她去往敵國和親素邪。 傳聞我的和親對象是個(gè)殘疾皇子外莲,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,543評論 2 349

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

  • 《深入理解Java虛擬機(jī)》筆記_第一遍 先取看完這本書(JVM)后必須掌握的部分。 第一部分 走近 Java 從傳...
    xiaogmail閱讀 5,069評論 1 34
  • 第二部分 自動內(nèi)存管理機(jī)制 第二章 java內(nèi)存異常與內(nèi)存溢出異常 運(yùn)行數(shù)據(jù)區(qū)域 程序計(jì)數(shù)器:當(dāng)前線程所執(zhí)行的字節(jié)...
    小明oh閱讀 1,138評論 0 2
  • 1.1 概述 Java優(yōu)點(diǎn): 1兔朦、結(jié)構(gòu)嚴(yán)謹(jǐn)偷线,面向?qū)ο?2、擺脫硬件平臺束縛沽甥,實(shí)現(xiàn)了“一次編寫声邦,到處運(yùn)行”的理想; ...
    viciyforever閱讀 1,157評論 1 9
  • Java 虛擬機(jī)屏蔽了與具體操作系統(tǒng)平臺相關(guān)的信息,使得 Java 語言編譯程序只需生成在 Java 虛擬機(jī)上運(yùn)行...
    尋夢的尕柳閱讀 860評論 0 11
  • 最近需求說有語音搜索功能,查了下資料然后找到科大訊飛的一些資料,作為自己學(xué)習(xí)簡單記錄下來.一.到訊飛開放平臺(ht...
    GaryHuang閱讀 1,583評論 3 2