获取 Profiler 指标的当前值。
用于获取即时的 Profiler 计数器值或标记计时。如果当前值是您唯一感兴趣的数据,则无需启动 ProfilerRecorder 或分配样本存储。在这种情况下,在创建 ProfilerRecorder 时使用 0 作为容量参数。
using UnityEngine; using Unity.Profiling;
public class Example { public static void LogCurrentSystemMemoryUsage() { var systemMemoryRecorder = new ProfilerRecorder(ProfilerCategory.Memory, "System Used Memory", 0); Debug.Log("System Used Memory (bytes): " + systemMemoryRecorder.CurrentValue); } }
使用 CurrentValue 检索用 ProfilerMarker.Auto 标记的代码的计时。
using UnityEngine; using Unity.Profiling;
public class Example { static readonly ProfilerMarker k_MyMarker = new ProfilerMarker(ProfilerCategory.Scripts, "MyMarker");
public static void TimeSynchronousMethodWithMarkers() { using (var recorder = ProfilerRecorder.StartNew(ProfilerCategory.Scripts, "MyMarker")) { using (k_MyMarker.Auto()) { // ... }
Debug.Log("MyMarker total time, ns: " + recorder.CurrentValue); } } }
注意
Stop 将 CurrentValue 重置为零。