亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

不規則 OutOfMemoryError 故障排除:無法創建新的本機線程

不規則 OutOfMemoryError 故障排除:無法創建新的本機線程

牛魔王的故事 2023-02-16 16:04:24
我有一個 Ubuntu 16.04.5 服務器,它以 root 身份運行多個 Java 應用程序。應用程序定期(大約每 30 分鐘到 1 小時)從OutOfMemoryError: unable to create new native thread. 我注意到,應用程序不會單獨崩潰,而是多個應用程序同時崩潰。我不知道是什么原因導致的,而且我無法找出我需要更改的內容來解決此問題。我關注了一些關于該錯誤的文章并經歷了多種可能的原因,但它們似乎并不適用于我的情況:修復線程創建率應用程序定期創建線程,但許多線程也會死掉。這意味著并發線程數永遠不會超過 10k。我通過生成線程轉儲和計數線程來檢查是否存在線程創建失控的問題,但線程數從未超過前面提到的 10k。增加操作系統的線程限制當我運行時ulimit -u它返回1546669。這應該夠了吧?為機器分配更多 RAM我使用了大約 7GB 的可用 16GB RAM。這是我的 htop 視圖:附加信息Java 版本:錯誤的完整錯誤堆棧跟蹤:java.lang.OutOfMemoryError: unable to create new native thread    at java.lang.Thread.start0(Native Method)    at java.lang.Thread.start(Thread.java:717)    at de.domisum.lib.auxilium.util.java.ThreadUtil.createAndStartThread(ThreadUtil.java:126)    at de.domisum.lib.auxilium.util.java.ThreadUtil.createAndStartThread(ThreadUtil.java:114)    at de.domisum.lib.auxilium.run.RunNotifyOnTimeout.run(RunNotifyOnTimeout.java:32)    at de.domisum.lib.auxilium.util.ticker.Ticker.tickWithTimeout(Ticker.java:119)    at de.domisum.lib.auxilium.util.ticker.Ticker.run(Ticker.java:108)    at java.lang.Thread.run(Thread.java:748)來自出現錯誤的應用程序的線程轉儲:thread dump垃圾收集器日志:gc log1 gc log2 gc log3
查看完整描述

1 回答

?
米脂

TA貢獻1836條經驗 獲得超3個贊

遷移到 Java 11 后問題消失了。



查看完整回答
反對 回復 2023-02-16
  • 1 回答
  • 0 關注
  • 87 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號