java.lang. OutOfMemoryError: не мог создать новый собственный поток

Также проверьте "поисковую" строку в/etc/resolv.conf

4
задан 18 May 2011 в 07:23
4 ответа

Это могло быть max user processes Вы совершаете нападки. Попытайтесь увеличить это до чего-то как 1 024.

ulimit -u 1024

Существуют глобальные пределы этому, так проверьте sysctl.conf и посмотрите на вывод:

sysctl kern.maxprocperuid kern.maxproc

и корректируйтесь в случае необходимости.

1
ответ дан 3 December 2019 в 04:03

Выделите больше памяти jvm. Обычно это - причина. Если у Вас есть 1 ГБ, добавьте 0.5 ГБ или 1. В зависимости от Вашей RAM необходимо сохранить 1-2 ГБ RAM для процессов ОС. Не выделяйте больше памяти, чем Вы имеете.

Как Mat сказал, это могли быть проблемы со слишком многими открытыми файлами, но в этом случае необходимо видеть такое сообщение. Ищите его в журналах.

1
ответ дан 3 December 2019 в 04:03

Другой подход должен настроить размер стека JVM, как упомянуто здесь: Предотвращение "OutOfMemory: не мог создать новый поток" использование Javas -Xss нестандартная опция (см. также документы инструмента),

Это могло бы быть выполнимой опцией, каждый раз, когда это не находится в Вашем питании управлять/уменьшать суммой потоков (например, когда преступник является сторонним lib или платформой, Нельзя угробить),

0
ответ дан 3 December 2019 в 04:03

stack size (kbytes, -s) 8192

That value is way too big for a large multithreaded application. If you are spinning a lot of threads try setting it to 1024 with ulimit -s or in /etc/security/limits.conf

0
ответ дан 3 December 2019 в 04:03

Теги

Похожие вопросы