Profiler.BeginThreadProfiling
Declaration
public static void BeginThreadProfiling(string threadGroupName, string threadName);Параметры
| Параметр | Описание |
|---|---|
| threadGroupName | Имя группы потоков, к которой принадлежит поток. |
| threadName | Имя потока. |
Описание
Включает профилирование в потоке, из которого вызван этот метод.
Заставляет поток появляться с зарегистрированным имя в Profiler Timeline Вид, показывая продолжительность каждой пробы в потоке. Пробы, которые пересекают границы кадров, разрезаются и могут добавлять время к нескольким кадрам.
Примечание:
Вызов этого метода во внутреннем потоке Unity (например, в главном потоке, потоке рендеринга или потоках системы заданий) не даёт никакого эффекта.
using UnityEngine; using UnityEngine.Profiling; using System.Threading;
public class ExampleClass : MonoBehaviour { CustomSampler sampler; void Start() { sampler = CustomSampler.Create("MyCustomSampler"); var thread = new Thread(MyThreadFunc) { IsBackground = true }; thread.Start(); }
void MyThreadFunc() { Profiler.BeginThreadProfiling("My threads", "My thread 1"); // Now samples will show up in the profiler timeline view for (int i = 0; i < 10; i++) { sampler.Begin(); // ... sampler.End(); }
// Unregister the thread before exit Profiler.EndThreadProfiling(); } }
Примечание:
Profiler.EndThreadProfiling всегда следует вызывать перед уничтожением потока, чтобы освободить внутренние ресурсы.
Дополнительные ресурсы: Profiler.EndThreadProfiling, CustomSampler.