0

Я использую очень хорошую настольную машину с очень хорошей конфигурацией 8 ГБ оперативной памяти и много свободного места.Ошибка: java.lang.OutOfMemoryError: превышен верхний предел GC Android Studio

во время работы приложения в моем устройстве Android Studio дает мне эту ошибку все время,

Error:java.lang.OutOfMemoryError: GC overhead limit exceeded 

Error:Execution failed for task ':app:transformClassesWithDexForDebug'. 
com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: java.lang.UnsupportedOperationException 

мои studio64.exe.vmoptions файл

-Xms256m 

-Xmx1024m 

-XX:MaxPermSize=350m 

-XX:ReservedCodeCacheSize=240m 

-XX:+UseConcMarkSweepGC 

-XX:SoftRefLRUPolicyMSPerMB=50 

-da 

-Djna.nosys=true 

-Djna.boot.library.path= 

-Djna.debug_load=true 

-Djna.debug_load.jna=true 

-Dsun.io.useCanonCaches=false 

-Djava.net.preferIPv4Stack=true 

-Didea.paths.selector=AndroidStudio2.2 

-Didea.platform.prefix=AndroidStudio 

-Didea.jre.check=true 

пожалуйста, дайте мне знать. Я также отключил функцию мгновенного запуска.

+0

измените настройку -Xmx с -Xmx1024m на большее значение (например, -Xmx2048m). -Xmx определяет максимальный размер пула распределения памяти в байтах. –

+0

Возможный дубликат [Ошибка java.lang.OutOfMemoryError: превышен лимит переполнения GC] (http://stackoverflow.com/questions/1393486/error-java-lang-outofmemoryerror-gc-overhead-limit-exceeded) –

ответ

1

Просто добавьте ниже строки в файл build.gradle.

dexOptions { 
     javaMaxHeapSize "4g" 
} 

Надеюсь, это поможет вам.

0

Выбор Сбор мусора CMS плохо влияет на размеры JVM JVM «Новое пространство». Если это пространство слишком мало, то вы будете постоянно видеть (молодое поколение) GC, что может привести к вашей проблеме.

Е.Г.,

/usr/bin/java -Xms4096m -Xmx4096m -XX:+PrintGCDetails -XX:+UseConcMarkSweepGC -version 

отчеты всего 160 Мб "Новое пространство", несмотря на общую 4 Гб размер кучи. Это было в двухъядерной системе (число увеличивается с количеством ядер), используя JVM 1.7.0_75.

Вы должны проверить, каков ваш результат, используя аналогичную команду - найдите строку par new generation total ...K. Если число кажется очень низким, то это основная причина вашей проблемы.

Вы можете решить эту проблему путем добавления опции -XX:NewRatio=2 -XX:NewSize=512m, который будет явно ...

  • применять стандартное правило dimensionsing для верхнего предела на «Новое пространство» на одну треть из доступно куча пространства
  • установить "Новое пространство" размер минимум до 512m

I n вообще, вы должны быть очень осторожны с настройкой настроек GC, например, добавлением -XX:+UseConcMarkSweepGC - без этой опции плохое измерение не будет отображаться в первую очередь.

Смежные вопросы