Описание
Описывает параметр метаданных Profiler, который может быть связан с образцом.
Используется с методом ProfilerUnsafeUtility.BeginSampleWithMetadata. Значение Type определяет тип данных Ptr указывает на. Значение должно быть значением перечисления ProfilerMarkerDataType.
using Unity.Collections.LowLevel.Unsafe;
using Unity.Profiling;
using Unity.Profiling.LowLevel;
using Unity.Profiling.LowLevel.Unsafe;
using System;
class Example
{
static IntPtr MakeMarkerWithIntMetadata(string name, string paramName)
{
var handle = ProfilerUnsafeUtility.CreateMarker(name, ProfilerUnsafeUtility.CategoryScripts, MarkerFlags.Default, 1);
ProfilerUnsafeUtility.SetMarkerMetadata(handle, 0, paramName, (byte)ProfilerMarkerDataType.Int32, (byte)ProfilerMarkerDataUnit.Count);
return handle;
}
static readonly IntPtr markerHandle = MakeMarkerWithIntMetadata("MyMarker", "Work Idx");
static unsafe void DoWork(int num)
{
var metadata = stackalloc ProfilerMarkerData[1];
metadata[0].Type = (byte)ProfilerMarkerDataType.Int32;
metadata[0].Size = (uint)UnsafeUtility.SizeOf();
metadata[0].Ptr = UnsafeUtility.AddressOf(ref num);
ProfilerUnsafeUtility.BeginSampleWithMetadata(markerHandle, 1, metadata);
//...
ProfilerUnsafeUtility.EndSample(markerHandle);
}
}
Свойства
Ptr | Необработанный указатель на значение метаданных. |
Size | Размер значения метаданных в байтах. |
Type | Тип метаданных. |