java.lang.OutOfMemoryError異常解決方法
創(chuàng)新互聯(lián)主要從事網(wǎng)站設(shè)計(jì)制作、網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)臨漳,10年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575
原因:
常見的有以下幾種:
1.內(nèi)存中加載的數(shù)據(jù)量過于龐大,如一次從數(shù)據(jù)庫取出過多數(shù)據(jù);
2.集合類中有對對象的引用,使用完后未清空,使得JVM不能回收;
3.代碼中存在死循環(huán)或循環(huán)產(chǎn)生過多重復(fù)的對象實(shí)體;
4.使用的第三方軟件中的BUG;
5.啟動參數(shù)內(nèi)存值設(shè)定的過??;
常見錯誤提示:
1.tomcat:java.lang.OutOfMemoryError: PermGen space
2.tomcat:java.lang.OutOfMemoryError: Java heap space
3.weblogic:Root cause of ServletException java.lang.OutOfMemoryError
4.resin:java.lang.OutOfMemoryError
5.java:java.lang.OutOfMemoryError
解決;
1.應(yīng)用服務(wù)器提示錯誤的解決:
把啟動參數(shù)內(nèi)存值設(shè)置足夠大。
2.Java代碼導(dǎo)致錯誤的解決:
重點(diǎn)排查以下幾點(diǎn):
1)檢查代碼中是否有死循環(huán)或遞歸調(diào)用。
2)檢查是否有大循環(huán)重復(fù)產(chǎn)生新對象實(shí)體。
3)檢查對數(shù)據(jù)庫查詢中,是否有一次獲得全部數(shù)據(jù)的查詢。一般來說,如果一次取十萬條記錄到內(nèi)存,就可能引起內(nèi)存溢出。這個(gè)問題比較隱蔽,在上線前,數(shù)據(jù)庫中數(shù)據(jù)較少,不容易出問題,上線后,數(shù)據(jù)庫中數(shù)據(jù)多了,一次查詢就有可能引起內(nèi)存溢出。因此對于數(shù)據(jù)庫查詢盡量采用分頁的方式查詢。
4 )檢查List、MAP等集合對象是否有使用完后,未清除的問題。List、MAP等集合對象會始終存有對對象的引用,使得這些對象不能被GC回收。
java運(yùn)行出現(xiàn)死循環(huán)時(shí),在dos命令行界面下,可以直接使用ctrl+c的組合鍵來停止程序,ctrl+c組合鍵在dos命令行界面中可以不用等待程序正常運(yùn)行結(jié)束,直接終止程序;還可以直接點(diǎn)擊dos命令行界面窗口的關(guān)閉按鈕來結(jié)束程序。在開發(fā)工具eclipse或者M(jìn)yeclipse中,可以直接點(diǎn)擊運(yùn)行控制臺中的紅色按鈕來結(jié)束程序。
線程阻塞了,開啟新線程執(zhí)行你的操作。不要在主線程中執(zhí)行耗時(shí)操作
1、電腦中毒或中惡意軟件,也可能引起電腦異常,解決辦法:升級殺毒軟件,殺毒,實(shí)在不行,就重裝或恢復(fù)過系統(tǒng)。
2 、配置不合理,不協(xié)調(diào),bios設(shè)置錯誤,也會引起電腦異常,所以裝機(jī)或升級硬件要找更專業(yè)的人員解決。
3 、電腦運(yùn)行中溫度過高也會引起電腦異常,建議用魯大師軟件,測下各項(xiàng)硬件溫度,再解決。
4 、由于電壓不穩(wěn)點(diǎn),電源功率不夠,也會經(jīng)常引起電腦異常,如果是這些原因引起的就配置一個(gè)穩(wěn)壓器,換大功率電源就能解決。
5 、由于運(yùn)行大軟件、大程序而導(dǎo)致的,如 玩大游戲、用大型軟件等,那就應(yīng)該是電腦硬件配置差的原因引起的。解決辦法就只有升級電腦配置、優(yōu)化電腦系統(tǒng)。
6 、舊電腦由于機(jī)箱里面灰塵太多,引起短路也容易引起電腦異常。要經(jīng)常清理下機(jī)箱里面的灰塵。
7、舊電腦由于使用時(shí)間長了,主板電路電容老化,也會引起電腦異常問題。只有送修或更換了。
8、 舊電腦硬盤用久了也會出故障引起電腦死機(jī)重啟,這就需要用硬盤測試軟件測試下硬盤,重新分區(qū)安裝系統(tǒng)可以修復(fù)硬盤邏輯壞道,修復(fù)不了,也只有換硬盤了。
分享文章:如何解決java死代碼 java死代碼是什么意思
文章來源:http://muchs.cn/article36/ddehspg.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、網(wǎng)站制作、標(biāo)簽優(yōu)化、網(wǎng)站維護(hù)、面包屑導(dǎo)航、品牌網(wǎng)站設(shè)計(jì)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)