2016-10-02 3 views
2

Недавно обновлено до android 2.2.java.lang.OutOfMemoryError: не удалось создать новый родной поток

попытался открыть существующий проект. Это побудило меня преобразовать, я согласился. Проект успешно импортирован, но всякий раз, когда я пытался здание, я получаю:

Error:Execution failed for task ':app:mergeDebugResources'. > java.lang.OutOfMemoryError: unable to create new native thread 

Я добавил:

org.gradle.daemon=false 
GRADLE_OPTS="-Xmx2048m -Xms2048m -XX:MaxPermSize=1024m" 
org.gradle.jvmargs=-XX:MaxPermSize=512m 

к gradle.properties. Тем не менее, это не сработало.

+0

Прошел h htps://plumbr.eu/outofmemoryerror/unable-to-create-new-native-thread –

ответ

3

У вас есть возможность столкнуться с java.lang.OutOfMemoryError: Unable to create new native thread всякий раз, когда JVM запрашивает новый поток из ОС. Всякий раз, когда базовая ОС не может выделять новый собственный поток, это OutOfMemoryError будет выбрано. Точный предел для собственных потоков очень зависит от платформы, поэтому мы рекомендуем выяснить эти ограничения, выполнив тест, аналогичный приведенному ниже примеру. Но, в целом, ситуация вызывает java.lang.OutOfMemoryError: Unable to create new native thread проходит следующие фазы:

  1. Новый Java поток запрашиваемых приложением, работающим внутри JVM
  2. JVM нативный код прокси запроса, чтобы создать новую родную нить ОС ОС пытается создать новую родную нить, которая требует памяти, отводимых для резьбы
  3. ОС откажет родное распределение памяти либо потому, что 32-битный Java размер процесса истощила его адресное пространство памяти - например (2-4) GB размера процесса предела был поражен - или виртуальная память ОС была полностью истощена
  4. java.lang.OutOfMemoryError: Невозможно создать новую родную ошибку нити выбрасываются.

Ссылка: https://plumbr.eu/outofmemoryerror/unable-to-create-new-native-thread