Java程序突然死掉的原因

Java程序突然死掉的原因一般有三種:

  • 程序OOM了,自己的Java程序申請內存創建對象的時候,申請的內存超出了堆內存的限制,此時我們叫做堆OOM了,當然還包括棧溢出,本地方法區溢出。
  • 程序佔用的內存過大,被Linux的oom killer程序刪除掉了,總的來講就是,其他程序申請內存,但是發現內存不夠了,Linux系統需要找到那個最耗費內存的程序(真實佔用內存,非真實內存),然後把它kill掉。
  • Java程序出現了致命錯誤,或者JVM自己的bug,會產生一個hs_err_pidxxx.log文件。注意這裏是指出現了一個錯誤,JVM都沒有正常的處理這個這個錯誤,此時會生成這個文件,比如你下了1/0這種運行時錯誤,JVM已經捕獲了這個錯誤,是不會有文件生成的。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章