我正在運行一個實驗性的java應用程序,每當我殺死或停止應用程序時,殭屍進程都會被創建。我知道殭屍並不是真正的問題,因爲它們(據說)不會消耗資源。但是,我的RAM可用空間明顯小於應該的數量。這裏是殺死java殭屍進程
ps aux | grep java
3052 8.5 0.0 0 0 ? Zl Sep24 127:24 [java] <defunct>
6644 0.9 0.0 0 0 ? Zl Sep24 13:20 [java] <defunct>
8325 0.7 0.0 0 0 ? Zl Sep24 11:01 [java] <defunct>
8954 0.7 0.0 0 0 ? Zl Sep24 11:01 [java] <defunct>
16229 1.3 0.0 0 0 ? Zl Sep24 16:57 [java] <defunct>
19222 106 0.0 0 0 ? Zl Sep24 1346:37 [java] <defunct>
無以下工作:(
kill -9 PID , kill -1 PID, kill -KILL PID
我不能重新啓動我的機器的轉儲!所以我會非常歡迎任何解決方案。
如果您的機器不會重新啓動,並且進程表如此之大以至於佔用了RAM的很大一部分,現在是時候拔掉電源插頭或致電驅魔人了。 – geoffspear
你有幾個基本的誤解,但最重要的是:你應該擁有的可用RAM的數量儘可能接近零。免費的RAM是純粹的損失。這不像是你今天使用一半內存,你明天可以使用額外的內存。如果您想讓RAM免費,請將其從機器中取出並放在您的桌面上。當我們想讓系統更好地運行時,我們通常通過增加RAM來獲得更多的RAM。 –
嗯,謝謝大衛,但我知道我在說什麼。 – DotNet