版本: Unity 6 (6000.0)
语言英语
  • C#

ProfilerRecorder.CurrentValue

建议更改

成功!

感谢您帮助我们提高 Unity 文档的质量。虽然我们无法接受所有提交的内容,但我们会阅读用户提出的每项更改建议,并在适当的情况下进行更新。

关闭

提交失败

由于某种原因,您的更改建议无法提交。请<a>稍后再试</a>。感谢您抽出时间帮助我们提高 Unity 文档的质量。

关闭

取消

public long CurrentValue;

描述

获取 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); } } }

注意
StopCurrentValue 重置为零。