public void doCheck(double nowTime) { if (normalPool.Count <= 0) { return; } for (int i = 0; i < removeLst.Count; i++) { if (normalPool.ContainsKey(removeLst[i])) { BaseTimeHandler h = normalPool[removeLst[i]]; normalPool.Remove(removeLst[i]); h.onDispose(); } } var ier = normalPool.GetEnumerator(); while (ier.MoveNext()) { if (ier.Current.Value.Invalid) { removeKey(ier.Current.Key); } else { ier.Current.Value.check(nowTime); } } }
/// <summary> /// 添加一个计时器 /// </summary> /// <param name="endCount"></param> 计数 /// <param name="eHandler"></param> 每次回调 /// <param name="cHandler"></param>完成回调 /// <param name="interval"></param> 间隔 private static long addTimer(int endCount, Action <int> eHandler, Action <int> cHandler = null, int interval = 1) { long id = TimerUtils.getTimeId(); BaseTimeHandler handler = new BaseTimeHandler(endCount, eHandler, cHandler, interval); Instance.normalPool.addTimer(id, handler); return(id); }
public void addTimer(long id, BaseTimeHandler handler) { normalPool.Add(id, handler); }
public void addTimer(long id, BaseTimeHandler handler) { fixedPool.Add(id, handler); }