public int AddTimeTask(Action <int> callback, double delay, KDTimeUnit timeUnit = KDTimeUnit.Millisecond, int count = 1) { if (timeUnit != KDTimeUnit.Millisecond) { switch (timeUnit) { case KDTimeUnit.Second: delay = delay * 1000; break; case KDTimeUnit.Minute: delay = delay * 1000 * 60; break; case KDTimeUnit.Hour: delay = delay * 1000 * 60 * 60; break; case KDTimeUnit.Day: delay = delay * 1000 * 60 * 60 * 24; break; default: LogInfo("Add Task TimeUnit Type Error..."); break; } } int tid = GetTid();; nowTime = GetUTCMilliseconds(); lock (lockTime) { tmpTimeLst.Add(new KDTimeTask(tid, callback, nowTime + delay, delay, count)); } return(tid); }
public bool ReplaceTimeTask(int tid, Action <int> callback, float delay, KDTimeUnit timeUnit = KDTimeUnit.Millisecond, int count = 1) { if (timeUnit != KDTimeUnit.Millisecond) { switch (timeUnit) { case KDTimeUnit.Second: delay = delay * 1000; break; case KDTimeUnit.Minute: delay = delay * 1000 * 60; break; case KDTimeUnit.Hour: delay = delay * 1000 * 60 * 60; break; case KDTimeUnit.Day: delay = delay * 1000 * 60 * 60 * 24; break; default: LogInfo("Replace Task TimeUnit Type Error..."); break; } } nowTime = GetUTCMilliseconds(); KDTimeTask newTask = new KDTimeTask(tid, callback, nowTime + delay, delay, count); bool isRep = false; for (int i = 0; i < taskTimeLst.Count; i++) { if (taskTimeLst[i].tid == tid) { taskTimeLst[i] = newTask; isRep = true; break; } } if (!isRep) { for (int i = 0; i < tmpTimeLst.Count; i++) { if (tmpTimeLst[i].tid == tid) { tmpTimeLst[i] = newTask; isRep = true; break; } } } return(isRep); }
public int AddTimeTask(Action <int> callback, double delay, KDTimeUnit timeUnit = KDTimeUnit.Millisecond, int count = 1) { return(pt.AddTimeTask(callback, delay, timeUnit, count)); }