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

ProfilerMarker

структура в Unity.Profiling

Выполнено в:UnityEngine.CoreModule

Описание

Маркер производительности, используемый для профилирования произвольных блоков кода.

Используйте ProfilerMarker для разметки блоков кода скрипта для Profiler.
Информация, полученная с помощью маркеров, отображается в CPU Profiler и может быть также захвачена с помощью Recorder. Во время разработки (в редакторе и разработке игроков) это может помочь получить обзор производительности различных частей кода игры и выявить проблемы производительности.

using Unity.Profiling;

public class MySystemClass { static readonly ProfilerMarker s_PreparePerfMarker = new ProfilerMarker("MySystem.Prepare"); static readonly ProfilerMarker s_SimulatePerfMarker = new ProfilerMarker(ProfilerCategory.Ai, "MySystem.Simulate");

public void UpdateLogic() { s_PreparePerfMarker.Begin(); // ... s_PreparePerfMarker.End();

using (s_SimulatePerfMarker.Auto()) { // ... } } }

ProfilerMarker представляет собой именованный handle профиля и является наиболее эффективным способом профилирования кода. Он может быть использован в jobified коде.
Методы Begin и End обозначены ConditionalAttribute. Они условно компилируются и, таким образом, имеют нулевые накладные расходы в сборках, не относящихся к разработке (выпуску).

Когда Profiler собирает данные измерений, ProfilerMarker помогает сократить накладные расходы и объем передаваемых данных. Profiler.BeginSample передает полную строку в поток данных, в то время как ProfilerMarker.Begin и CustomSampler.Begin только целочисленный идентификатор маркера.

Также ProfilerMarker.End предоставляет контекстную информацию для Recorder позволяет отслеживать время выполнения обозначенного кода в Players.

Дополнительные ресурсы: Recorder.

Свойства

Свойство Описание
HandleПолучает собственный идентификатор ProfilerMarker.

Конструкторы

Конструктор Описание
ProfilerMarkerСоздает новый маркер производительности для инструментов кодирования.

Открытые методы

Метод Описание
AutoСоздаёт вспомогательную структуру для блоков using с областью видимости.
BeginНачните профилирование части кода, помеченной пользовательским именем, определенным этим экземпляром ProfilerMarker.
EndЗавершить профилирование части кода, помеченной пользовательским именем, определенным этим экземпляром ProfilerMarker.