private static AbstractTimeTask GetTimeTask(AbstractTimeTask task, uint start, int interval, Action action) { task.Interval = interval; task.TimeId = ++TimeTaskManager.m_uiNextTimeId; task.NextTick = TimeTaskManager.m_uiTick + start; task.Action = action; return(task); }
public static uint AddTimer(uint start, int interval, Action action) { AbstractTimeTask task = GetTimeTask(new TimeTask(), start, interval, action); lock (m_queueLock) { m_queue.Enqueue(task); } return(task.TimeId); }
/// <summary> /// 吧Task加入到队列里面来管理,既然是个管理器肯定要有个添加task的操作 /// </summary> /// <param name="start">多久之后开始执行ms</param> /// <param name="interval">重复时间间隔ms</param> /// <param name="action">任务委托</param> /// <returns>任务id</returns> public static uint AddTimer(uint start, int interval, Action <object> action, object obj) { AbstractTimeTask task = GetTimeTask(new TimeTask(), start, interval, action, obj); lock (m_queueLock) { m_queue.Add(task); } return(task.TimeId); }