using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using UnityEngine;
///
/// 主线程计时器驱动
///
public static class DispatcherTimerDriver
{
///
/// 计时器列表
///
private static List TimersList = new List();
///
/// 添加一个新的计时器到队列中
///
///
public static void AddTimer(DispatcherTimer timer)
{
TimersList.Add(timer);
}
///
/// 从队列中删除一个计时器
///
///
public static void RemoveTimer(DispatcherTimer timer)
{
TimersList.Remove(timer);
}
///
/// 清空所有
///
public static void ClearAll()
{
TimersList.Clear();
}
///
/// 执行timer
///
public static void ExecuteTimers()
{
//Profiler.BeginSample("DispatcherTimerDriver.ExecuteTimers");
int count = TimersList.Count;
for (int i = 0; i < count; i++)
{
try
{
TimersList[i].ExecuteTimer();
}
catch (System.Exception ex)
{
Debug.LogException(ex);
}
}
//Profiler.EndSample();
}
}