亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

Java成神之路(一)-- JVM基礎

2019-11-14 10:24:51
字體:
來源:轉載
供稿:網友

學習java的同學注意了?。?! 學習過程中遇到什么問題或者想獲取學習資源的話,歡迎加入Java學習交流群,群號碼:183993990  我們一起學Java!

JVM.PNG

JVM內存模型

描述主內存和工作內存之間的通信規則,避免數據不一致。所有線程共享JVM內存區域main memory。而每個單獨線程又有自己的工作內存。為了保證從工作內存寫到主內存的數據的一致性,JVM定義了一系列的規則

所有變量都在主內存中,對所有線程共享(此處的變量與Java編程時所說的變量不一樣,指包括了實例字段、靜態字段和構成數組對象的元素,但是不包括局部變量與方法參數,后者是線程私有的,不會被共享。)每條線程都有自己的工作內存,保存主內存中變量的拷貝,線程對變量的操作只能在工作內存中完成

線程無法直接訪問對方的工作內存

內存之間的8個交互指令

lock(main) unlock(main) read(main) load(work) use(work) assign(work) store(work) write(main)必須順序執行,不必連續執行

不許read load 和 store write單獨出現不許丟棄assign結果,必須同步回主內存不許未assign,直接同步主內存變量只能在主內存誕生。在使用use 和 store前,必須先read和load一個變量同一時刻只能由一個lock操作,與unlock必須成對出現如果lock操作,那么這個變量需要重新執行load 和 assign操作如果沒lock,不許unlockunlock前,必須執行store和write

JVM內存管理

Java虛擬機在運行時會把它所管理的內存分為若干不同個數據區域主內存: 方法區+堆, 由線程共享工作內存:棧 + 程序計數器,線程私有

方法區: 存放類信息,常量,靜態變量,即時編譯后的代碼。堆:存放對象,細分為新生代(Eden,From Survivor, To Survivor)+ 老年代, 也可以劃分出多個線程私有的分配緩存區TLAB棧:局部變量表 + 操作數棧 + 動態鏈接 + 方法出參+其他(debug)程序計數器:當前線程所執行的代碼的行號指示器

JVM垃圾回收

對象已死分析:引用計數法 Vs 可達性分析法GC roots:棧中引用的對象,類靜態變量引用的對象,常量引用的對象,本地方法JNI引用的對象垃圾回收算法:復制,標記-整理,標記-清除,分代回收垃圾回收時間:安全點,安全區域垃圾回收器:新生代:serial parNew ParallelScavenge老年代:serialOld parallelOld CMSG1CMS垃圾回收器:初始標記 -》 并發標記-》重新標記-》并發清除

JVM參數調優

標準參數 (-) -verbose

非標準參數 (-X) -Xmx20m-Xmx 堆最大值-Xms 堆最小值-Xmn 新生代內存-Xss 棧內存

非穩定參數 (-XX) -XX:SurvivorRatio=8

行為參數:DisableExplicitGC 禁止顯示調用system.gcUseConcMarkSweepGCUseSearialGCUseParallelGC

性能調優:PermSize 方法區內存MaxPermSizeSurvivorRatio 新生代中Eden和Survivor的容量比值,默認8:1PRetenureSizeThreshold 直接晉升到老年代的對象大小閾值MaxTenuringThreshold 晉升到老年代的年齡UseAdaptiveSizePolicy 動態調整Java堆各區域的大小及進入老年代的年齡HandlePromotionFailure 是否允許擔保失敗ParallelGCThreads GC內存回收的線程數GCTimeRatio GC占總時間的比例,默認99, 只允許1%,只在parallelScavenge生效MaxGCPauseMillis GC最大停頓時間,只在parallelScavenge生效CMSInitiatingOccupancyFraction 老年代在空間占用多少后觸發回收,默認68%,只在CMS生效UseCMSCompactionAtFullCollection 是否需要整理,僅在CMS生效CMSFullGCsBeforeCompaction 幾次后再整理CompileThreshold JIT編譯閾值 client默認1500 server默認10000

調試:printGCDetails 打印內存回收日志HeapDumpOnOutOfMemoryErrorTraceClassLoadingTraceClassUnloading

java工具

jps: 打印java進程jstack: 查看線程信息jmap: 查看堆信息jconsole, jinfo, jhat, javap, btrace

問題解決

HeapOutOfMemory當堆上分配的對象大于指定堆的最大值時,拋出該錯??梢允褂?XX:+HeapDumpOnOutOfMemoryError 查看內存快照進行分析

MethodArea OutOfMemory方法區內存不足,存放類信息,常量,靜態變量,即時編譯后的代碼,檢查這幾個信息是否有異常大多的原因是因為動態產生過多的類。

ConstantPool OutOfMemory常量池溢出,查看是否intern使用不當

DirectMemory OutOfMemory本機直接內存溢出,容量可通過-XX:MaxDirectMemorySize指定,如果不指定,默認和堆最大值相同。這個溢出發生在系統進行直接內存分配。例如:unsafe.allocateMemory()特征為:OOM后發現Dump問價你很小,程序中直接或間接使用了NIO

Stack OutOfMemory擴展棧時無法獲取足夠的內存空間,在創建線程時解決方法之一:減少最大堆

Stack OverFlow棧深度大于虛擬機所允許的深度,經常是由于死循環的遞歸調用

當一個Java程序響應很慢時如何查找問題


上一篇:HDU1495(BFS變形)

下一篇:The Game

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
这里只有精品视频| 亚洲一区二区三区乱码aⅴ| 亚洲电影免费在线观看| 精品国产一区二区三区久久狼黑人| 国产精品国产三级国产专播精品人| 久久久国产精彩视频美女艺术照福利| 国产成人精品午夜| 国产精品日韩欧美| 俺去亚洲欧洲欧美日韩| 亚洲一级片在线看| 欧美一级大片在线免费观看| 91精品视频在线播放| 91成人福利在线| 欧美日韩中文字幕在线| 久久精品视频在线观看| 国产综合在线看| 亚洲国产免费av| 日韩免费在线电影| 亚洲欧美日韩国产中文专区| 久久久久久av| 久久久久999| 亚洲电影成人av99爱色| 国产精品美女www爽爽爽视频| 欧美激情视频给我| 色婷婷**av毛片一区| 欧美精品成人91久久久久久久| 日韩亚洲欧美中文在线| 国产成人精品日本亚洲| 中文日韩在线视频| 91在线视频九色| www.xxxx精品| 国产在线拍揄自揄视频不卡99| 91精品久久久久久久久青青| 免费不卡欧美自拍视频| 日韩av男人的天堂| 日本精品视频在线观看| 欧美日韩日本国产| 亚洲第一精品夜夜躁人人爽| 国产精品video| 国产精品久久久久久久天堂| 国模吧一区二区| 亚洲人精选亚洲人成在线| 97色在线视频观看| 久久五月天色综合| 国产成人福利网站| 国产成人精品久久| 福利微拍一区二区| 777国产偷窥盗摄精品视频| 亚洲情综合五月天| 国产在线精品自拍| 成人有码在线播放| 91亚洲精品在线| 97在线视频国产| 欧美www视频在线观看| 亚洲精品国产综合区久久久久久久| 亚洲欧美制服综合另类| 国产欧美一区二区三区久久| 91精品国产自产在线观看永久| 日韩最新免费不卡| 少妇高潮久久久久久潘金莲| 久久成人这里只有精品| 97香蕉超级碰碰久久免费的优势| 97久久精品人人澡人人爽缅北| 国产中文欧美精品| 91在线视频精品| 国产aⅴ夜夜欢一区二区三区| 国外成人在线直播| 欧美激情一级精品国产| 欧美日韩精品国产| 91精品在线观| 97香蕉超级碰碰久久免费软件| 久久免费视频网| 91av网站在线播放| 国产成人精品日本亚洲专区61| 亚洲国产一区二区三区四区| 亚洲精美色品网站| 97视频在线观看免费高清完整版在线观看| 国产福利视频一区| 亚洲精品欧美极品| 日韩美女写真福利在线观看| 欧美日韩免费在线| 久久久久99精品久久久久| 久久夜色精品国产亚洲aⅴ| 在线视频欧美日韩| 搡老女人一区二区三区视频tv| 日韩中文理论片| 亚洲欧美色婷婷| 久久亚洲成人精品| 91夜夜未满十八勿入爽爽影院| 91色视频在线观看| 精品国产一区二区三区久久狼5月| 欧美在线视频一区二区| 欧美成年人在线观看| 91亚洲精品一区| 久久精彩免费视频| 亚洲精品mp4| 中文字幕久久久| 夜色77av精品影院| 在线观看视频亚洲| 成人欧美一区二区三区黑人孕妇| 国产97人人超碰caoprom| 自拍偷拍免费精品| 98视频在线噜噜噜国产| 中国人与牲禽动交精品| 欧美日韩一区二区精品| 91久久国产精品91久久性色| 91理论片午午论夜理片久久| 91亚洲精品久久久久久久久久久久| 欧美激情中文字幕乱码免费| 亚洲精品电影久久久| 日韩亚洲国产中文字幕| 亚洲电影免费观看高清完整版| 国产一区二区日韩精品欧美精品| 亚洲人a成www在线影院| 亚洲精品av在线| 久久人人爽亚洲精品天堂| 久久亚洲精品视频| 91在线观看免费观看| 国产精品综合久久久| 亚洲第一区中文字幕| www欧美日韩| 亚洲国产另类 国产精品国产免费| 精品福利樱桃av导航| 亚洲激情视频在线观看| 精品久久久精品| 中文字幕欧美日韩在线| 中文字幕9999| 亚洲男人的天堂网站| 成人一区二区电影| 久久精品国产69国产精品亚洲| 亚洲色图第三页| 久青草国产97香蕉在线视频| 中日韩美女免费视频网址在线观看| 国产欧美精品一区二区三区介绍| 欧美在线视频免费| 欧美日韩午夜剧场| 国产69精品99久久久久久宅男| 欧美日韩国产成人| 国产精品第七十二页| 久久在线免费视频| 岛国视频午夜一区免费在线观看| 欧美日韩国产一区二区三区| 日韩高清电影好看的电视剧电影| 国产大片精品免费永久看nba| 91精品久久久久久久久青青| 成人激情视频网| 欧美一级视频在线观看| 国产精品吊钟奶在线| 国产香蕉精品视频一区二区三区| 另类色图亚洲色图| 久久伊人免费视频| 久久99亚洲精品| 国产精品国产自产拍高清av水多| 亚洲精品视频中文字幕| 国产精品三级在线| 日本久久中文字幕| 日韩一区二区av| 国产精品视频公开费视频| 欧美另类99xxxxx| 国产精品美女久久| 欧美男插女视频| 性欧美xxxx视频在线观看| 5252色成人免费视频| 日韩精品欧美国产精品忘忧草|