日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

jvm(2)-OutOfMemoryError 异常(内存溢出异常)

發布時間:2023/12/3 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 jvm(2)-OutOfMemoryError 异常(内存溢出异常) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
【0】README 0.1)本文轉自 深入理解 jvm, 旨在學習?OutOfMemoryError 異常(內存溢出異常) 的觸發類型;
0)準備知識 0.1)除了程序計數器外,虛擬機內存的其他幾個運行時區域(方法區+虛擬機棧+本地方法棧+java堆)都有發生 OutOfMemoryError異常的可能性; 0.2)如何設置Eclipse 的 VM 參數?
1)java堆內存溢出異常測試 1.1)運行結果(運行參數 -Xms20M -Xmx20M -XX:+HeapDumpOnOutOfMemoryError) package com.jvm.chapter2;import java.util.ArrayList; import java.util.List;/*** VM Args:-Xms20m -Xmx20m -XX:+HeapDumpOnOutOfMemoryError* @author zzm*/ public class HeapOOM {static class OOMObject {}public static void main(String[] args) {List<OOMObject> list = new ArrayList<OOMObject>();while (true) {list.add(new OOMObject());}} }<strong> </strong> 1.2)solution:?通過內存映像分析工具(如 Eclipse Memory Analyzer) 對 dump(轉儲) 出來的堆轉儲快照進行分析,重點是確認內存中的對象是否是有必要的,也就是要先分清楚是出現了內存泄露(Memory Leak) 還是內存溢出(Memory Overflow);
2)虛擬機棧和本地方法棧溢出 2.1)?HotSpot 虛擬機中并不區分虛擬機棧和本地方法棧; 2.2)使用 -Xss 參數減少棧內存容量。結果: 拋出StackOverflowError 異常,異常出現時輸出的堆棧深度相應縮小; 2.3)運行結果:(運行參數 -Xss128k) package com.jvm.chapter2;/*** VM Args:-Xss128k* @author zzm*/ public class JavaVMStackSOF {private int stackLength = 1;public void stackLeak() {stackLength++;stackLeak();}public static void main(String[] args) throws Throwable {JavaVMStackSOF oom = new JavaVMStackSOF();try {oom.stackLeak();} catch (Throwable e) {System.out.println("stack length:" + oom.stackLength);throw e;}} } 2.4)定義了大量的本地變量,增大此方法幀中本地變量表的長度。結果: 拋出StackOverflowError 異常時輸出的堆棧深度相應縮小;
3)方法區和運行時常量池溢出 3.0)String.intern() :是一個Native方法,它的作用是:?如果字符串常量池中已經包含一個等于此String 對象的字符串,則返回代表池中這個字符串的String對象;否則,將此String對象包含的字符串添加到常量池中,并且返回此String 對象 的引用; 3.1)由于常量池分配在永久代內,通過 -XX:PermSize 和 -XX:MaxPermSize 限制方法區大小,從而間接限制其中常量池的容量; 3.2)運行參數(-XX:PermSize=10M -XX:MaxPermSize=10M) Attention)沒有拋出異常,因為? Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=1M; support was removed in 8.0 Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=1M; support was removed in 8.0
3.3)測試 String.intern方法: package com.jvm.chapter2;public class RuntimeConstantPoolOOM {public static void main(String[] args){String str1 = new StringBuilder("中國").append("釣魚島").toString();System.out.println(str1.intern() == str1);// trueString str2 = new StringBuilder("ja").append("va").toString();System.out.println(str2.intern() == str2);// false} } 對上圖的分析)Analysis: A1)在jdk 1.6中,會得到兩個false。? ?因為在 jdk1.6中,intern 方法會把首次遇到的字符串實例copy 到永久代中,返回的也是永久代中這個字符串市實例的引用,而StringBuilder 創建的字符串實例在 java堆上,所以必然不是同一個引用; A2)在jdk1.7中,會得到一個true和一個false。因為在 jdk1.7中的 intern 方法不會copy實例,只是在常量池中記錄首次出現的實例引用,因此intern() 方法的引用和由StringBuilder 創建的那個字符串實例是同一個。對str2 比較返回false 是因為“java”這個字符串在執行 StringBuilder.toString()之前已經出現過了,字符串常量池已經有它的引用了,不符合“首次出現原則”,而“計算機軟件”這個字符串則是首次出現,因此返回true;
4)本機直接內存溢出 4.1)DirectMemory容量:?可以通過-XX:MaxDirectMemorySize 指定,如果不指定,則默認與java 堆最大值(-Xmx指定)一樣;

總結

以上是生活随笔為你收集整理的jvm(2)-OutOfMemoryError 异常(内存溢出异常)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 美女被到爽高潮视频 | 性插视频在线观看 | 中文字幕一区二区三区精品 | 印度毛茸茸 | 999在线观看视频 | 九九九热 | av动态 | 成人动漫在线观看视频 | www视频在线观看免费 | 国产老头户外野战xxxxx | 亚洲熟妇无码一区二区三区 | 欧美少妇b | 欧美综合久久 | 第五色婷婷 | 国产一区二区高清视频 | 欧美做爰性生交视频 | 无码人妻一区二区三区av | 国产欧美日韩综合精品一区二区 | 爱爱视频欧美 | 99热都是精品 | 超碰神马 | 中文字幕乱码人妻一区二区三区 | 日本免费电影一区二区三区 | 欧美国产一区二区在线观看 | 欧美黑人疯狂性受xxxxx野外 | 理论片大全免费理伦片 | 成人亚洲电影 | 懂色aⅴ一区二区三区免费 国产精品99在线观看 | 日本一区二区视频在线 | 蜜桃视频久久一区免费观看入口 | 九色视频丨porny丨丝袜 | 免费动漫av| 少妇搡bbbb搡bbb搡打电话 | 国产一级一区二区 | 青青操视频在线播放 | 国产伦精品一区二区三区照片 | 99久久99久久精品国产片果冰 | 精品无码一区二区三区爱欲 | 小早川怜子一区二区三区 | 久久国产视频网站 | 国产一区二区精彩视频 | 天堂中文在线观看 | www.五月激情 | 精品久久电影 | 九九热精品视频 | 国产一区亚洲二区 | 国产成人免费观看 | 色吊丝一区二区 | 久久久一区二区三区四区 | mm1313亚洲国产精品美女 | 三级黄色在线 | 午夜剧场免费在线观看 | aa视频网站 | 在线黄色网页 | 九九热最新网址 | 日韩精品一区二区三区高清免费 | 图书馆的女友在线观看 | 97在线观看视频免费 | 亚洲AV成人无码网站天堂久久 | 国产精品无码一区二区三区在线看 | 一区二区三区视频在线免费观看 | 国产精品二区在线观看 | 天天噜夜夜噜 | 亚洲激情a| 性生交大全免费看 | 欧美日韩a√ | 五月婷婷开心中文字幕 | 性一交一乱一透一a级 | 91av视频在线免费观看 | 波多野结衣一二三四区 | 亚洲黄色免费观看 | 一级a毛片免费观看久久精品 | m3u8成人免费视频 | 亚洲成人一区在线观看 | 亚洲av综合色区无码一区爱av | 黄色美女一级片 | 夜夜嗨一区二区三区 | 91av影视 | 成人免费视频国产免费 | 五月天色综合 | 91久久国产综合久久91精品网站 | 亚洲小视频在线播放 | 人人涩| 青青草国产成人99久久 | aaaaaav| 精品福利电影 | 亚洲精品国产日韩 | 国产无套内射普通话对白 | 亚洲av午夜精品一区二区三区 | 国产精品精品久久久 | 精品国产乱码久久久久久鸭王1 | 大香蕉精品一区 | 熟妇的味道hd中文字幕 | 久久一区二区三区视频 | 中国字幕一色哟哟 | 日日摸日日干 | 国产丝袜美腿一区二区三区 | 玖玖爱精品 | 成人亚洲精品 |