廢話:其實很多時候出現錯誤不是不能解決,而是不知道如何通過搜索查詢到想要的答案,這個問題不是一直出現,沒有錯誤打印簡直無法下手,但是又會導致整個程序崩潰不可忽視,一直斷斷續續困擾了兩個禮拜之久,一是問題間斷發生,難以捕捉,二是經驗不足,容易忽視一些東西,開始的時候百度谷歌幾乎翻遍了,大多關於Python出現這種情況,或者解決方法於我無用,然后問過一些大佬們,總算給了我一絲靈感,注意到jvm的日志,從而開始解決,由於沒有更高級的替換文件,遂整個換了一種方法來達到效果。第二次遇到的時候更加蛋疼,連日志也沒有了,又頭禿了幾天,然后發現事件查看器可以完美找到要害。最后以此記錄,希望能幫到大家。
1、問題描述
Process finished with exit code -1073741819 (0xC0000005)
java程序異常退出,且不包含錯誤打印,連帶tomcat停止運行,常見導致的原因為:堆棧溢出,調用的底層dll文件出錯,常伴隨jvm錯誤日志出現,格式為hs_err_pid36224.log,其中包含具體錯誤原因
Process finished with exit code -1073740791 (0xC0000409)
問題同上,但是不會出現錯誤日志,可以查看計算機管理中事件查看器,造成程序異常停止的原因
2、解決方法
如果堆棧溢出,調整jvm的合適大小就行
如果是底層dll文件出錯,可以替換更高級的jar包或者替換調用的dll文件
3、注意
事件查看器中,可能會發現錯誤的情況有windows系統本身的dll文件導致錯誤,一般這種情況要么就是你用到的dll文件調用了windows本身的dll文件,可能是多線程調用的原因,但底層不允許如此調用從而導致奔潰,可以自己多排查幾遍,還有我在網上看到的另外的情況說是更新相關的程序驅動,暫時我沒有遇到過,有待考證。
如何查看事件查看器
右擊計算機->管理->事件查看器->自定義視圖->管理事件,其中來源為Application Error的錯誤
