Назад к вопросам
Middle
69
questionbank
Каким образом можно задать параметры конфигурации сборщика мусора (GC) в Java?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Параметры GC задаются опциями командной строки при запуске JVM. Наиболее общие опции начинаются с -XX:.
Примеры опций:
-Xms<размер>: Начальный размер кучи.-Xmx<размер>: Максимальный размер кучи.-XX:+<НазваниеGC>: Выбор сборщика мусора. Например,-XX:+UseG1GCдля включения G1 GC.-XX:NewRatio=<число>: Отношение молодого поколения к старому (оно же "какое количество частей старого поколения соответствует одной части молодого"). Например,-XX:NewRatio=2означает, что старое поколение в 2 раза больше молодого (1/3 кучи - молодое, 2/3 - старое).-XX:SurvivorRatio=<число>: Отношение области Eden к каждой из областей Survivor. Например,-XX:SurvivorRatio=8означает, что область Eden в 8 раз больше каждой из областей Survivor (1/10 молодого поколения - каждый Survivor).-XX:MaxMetaspaceSize=<размер>: Максимальный размер Metaspace.-XX:+PrintGCDetails: Выводить подробную информацию о каждой сборке мусора.-XX:+PrintGCTimeStamps: Добавлять метки времени к выводу GC.-XX:+UseConcMarkSweepGC: Использование сборщика CMS (Deprecated в последних версиях).-XX:+UseParallelGC: Использование параллельного сборщика для молодого поколения.
Пример запуска приложения с параметрами GC:
java -Xms512m -Xmx2g -XX:+UseG1GC -XX:+PrintGCDetails -jar myapp.jar
Параметры могут различаться в зависимости от конкретного сборщика мусора и версии Java. Документация Oracle является основным источником информации по доступным опциям.