Debian:无法分叉(内存问题)

Debian: Cannot fork (Memory Issue)

最近我的进程开始随机死亡,内存不足异常。此外,打印了这些进程的重启脚本: ./start.sh: 4: ./start.sh: 无法分叉

脚本如下所示:

#!/bin/sh

#EU1
while :
do

if ! screen -list | grep -q "eu1"; then
echo EU1 ist down, Patch eingeleitet!
cd MysticRunes/EU1
./patch.sh
echo EU1 Patch ausgeführt!
screen -dmS eu1 java -Xms6000M -Xmx6000M -jar spigot.jar nogui
echo EU1 neugstartet!
cd ../..
fi

#MRDev
if ! screen -list | grep -q "mrdev"; then
echo MRDev ist down, restart eingeleitet!
cd MysticRunes/Developer
screen -dmS mrdev java -Xms4000M -Xmx4000M -jar spigot.jar nogui
echo MRDev neugstartet.
cd ../..
fi

sleep 1
done

free -m 显示:

             total       used       free     shared    buffers     cached
Mem:         32125      29902       2222          0       1386      17873
-/+ buffers/cache:      10642      21483
Swap:        16375          0      16375

并且 htop 显示了这个:

我真的不能说这是什么问题。我已经查看了正在使用的内存问题,据我所知,我的内存使用了那么多,因为它只是缓存内容,当服务器需要更多内存时,分配给缓存的内存应该是空闲的。 HTOP 一遍又一遍地显示相同的进程可能只是服务器的线程数 运行 对吧?那么基本上所有进程内存使用量为 8.7% 的条目也可以合并为 8.7% 吗?

也许我只是理解错了所以请更正 and/or 帮助我。

真诚的, 贾劳

解决方案是有一个线程池不断创建线程,从而导致在某个时刻达到最大线程数。感谢您的帮助。