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

AsyncReadManagerMetrics.GetMetrics

Declaration

public static AsyncReadManagerRequestMetric[] GetMetrics(Unity.IO.LowLevel.Unsafe.AsyncReadManagerMetrics.Flags flags);
public static AsyncReadManagerRequestMetric[] GetMetrics(Unity.IO.LowLevel.Unsafe.AsyncReadManagerMetricsFilters filters, Unity.IO.LowLevel.Unsafe.AsyncReadManagerMetrics.Flags flags);

Параметры

Параметр Описание
флаги флаги для управления поведением, включая очистку базовых завершенных показателей после чтения.
фильтры (Необязательно) filters для управления возвращаемыми данными.

Возвращаемое значение

AsyncReadManagerRequestMetric[] Масив метрики запроса чтения в настоящее время хранятся в AsyncReadManager, которые могут быть отфильтрованы путем прохождения AsyncReadManagerMetricsFilters.

Описание

Возвращает текущие метрики AsyncReadManager.

Эта функция может фильтровать собранные метрики путем передачи AsyncReadManagerMetricsFilters. Информацию о создании фильтра см. в AsyncReadManagerMetricsFilters.ctor.

using Unity.IO.LowLevel.Unsafe;
using UnityEngine;
public class AsyncReadManagerMetricsSample : MonoBehaviour
{
#if ENABLE_PROFILER && UNITY_2020_2_OR_NEWER
    void Start()
    {
        AsyncReadManagerMetrics.StartCollectingMetrics();
    }

void Update() { AsyncReadManagerRequestMetric[] thisFrameMetrics = AsyncReadManagerMetrics.GetMetrics(AsyncReadManagerMetrics.Flags.ClearOnRead); foreach (AsyncReadManagerRequestMetric metric in thisFrameMetrics) { if (metric.State == ProcessingState.Completed) { double bandwidthMBPerSecond = metric.SizeBytes / (metric.TotalTimeMicroseconds - metric.TimeInQueueMicroseconds); Debug.LogFormat($"Asset name:\"{metric.AssetName}\", bandwidth = {bandwidthMBPerSecond}MB/s"); } } }

#endif }

Declaration

public static void GetMetrics(List<AsyncReadManagerRequestMetric> outMetrics, Unity.IO.LowLevel.Unsafe.AsyncReadManagerMetrics.Flags flags);
public static void GetMetrics(List<AsyncReadManagerRequestMetric> outMetrics, Unity.IO.LowLevel.Unsafe.AsyncReadManagerMetricsFilters filters, Unity.IO.LowLevel.Unsafe.AsyncReadManagerMetrics.Flags flags);

Параметры

Параметр Описание
outMetrics Предварительно выделенный список для хранения показателей.
флаги флаги для управления поведением, включая очистку базовых завершенных показателей после чтения.
фильтры (Необязательно) filters для управления возвращаемыми данными.

Описание

Записывает текущие метрики AsyncReadManager в указанный Список.

Эта функция может фильтровать собранные метрики путем передачи AsyncReadManagerMetricsFilters. Информацию о создании фильтра см. в AsyncReadManagerMetricsFilters.ctor.

using Unity.IO.LowLevel.Unsafe;
using System.Collections.Generic;
using UnityEngine;
public class AsyncReadManagerMetricsSample : MonoBehaviour
{
#if ENABLE_PROFILER && UNITY_2020_2_OR_NEWER
    void Start()
    {
        AsyncReadManagerMetrics.StartCollectingMetrics();
    }

void Update() { List<AsyncReadManagerRequestMetric> thisFrameMetrics = new List<AsyncReadManagerRequestMetric>(); AsyncReadManagerMetrics.GetMetrics(thisFrameMetrics, AsyncReadManagerMetrics.Flags.ClearOnRead); foreach (AsyncReadManagerRequestMetric metric in thisFrameMetrics) { if (metric.State == ProcessingState.Completed) { double bandwidthMBPerSecond = metric.SizeBytes / (metric.TotalTimeMicroseconds - metric.TimeInQueueMicroseconds); Debug.LogFormat($"Asset name:\"{metric.AssetName}\", bandwidth = {bandwidthMBPerSecond}MB/s"); } } }

#endif }