Unity 6.3
0 онлайн 81 гостей 3 в системе
Вход

GarbageCollector.incrementalTimeSliceNanoseconds

Declaration

public static ulong incrementalTimeSliceNanoseconds;

Описание

Целевая продолжительность этапа сбора данных при выполнении постепенной сборки мусора.

При включении постепенного сбора мусора сборщик мусора распределяет количество работы, необходимой для высвобождения неиспользуемой памяти, на несколько шагов. На каждом отдельном шаге сборщик мусора ограничивает себя временем, указанным incrementalTimeSliceNanoseconds. Распределяя рабочую нагрузку, постепенный сбор мусора может помочь вашей игре достичь более плавной частоты кадров (когда проблемы с сбором мусора являются проблемой). Используйте Profiler, чтобы помочь определить, влияет ли сбор мусора на плавность частоты кадров.

Сборщик мусора все же может выбрать выполнение регулярного, неинкрементального цикла сбора, если ваше приложение работает с недостатком памяти или если постепенные шаги не могут поспевать за рабочей нагрузкой сбора мусора. Установка слишком короткого временного отрезка может быть контрпродуктивной в этом отношении и потому, что каждый шаг сбора мусора имеет небольшое количество накладных расходов. Значение по умолчанию 3 мс (3000000 наносекунд) является хорошей отправной точкой, и выбранная продолжительность всегда должна быть значительно короче, чем ваша целевая частота кадров.

Если вы включите Vsync, установив QualitySettings.vSyncCount больше 0 или указанную частоту кадров с Application.targetFrameRate, Unity автоматически использует любое дополнительное время, оставшееся в конце каждого кадра для постепенной сборки мусора, независимо от значения incrementalTimeSliceNanoseconds.

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

Включить постепенную сборку мусора в PlayerSettings для проекта. Вы можете проверить, включена ли постепенная сборка мусора с помощью IsIncremental.

Вы можете вручную запустить шаг постепенной сборки мусора с помощью CollectIncremental.