示例#1
0
 public void UnregisterCyclicTask(CyclicTask cyclicTask)
 {
     lock (this.m_sync)
     {
         cyclicTask.Stop();
         this.m_cyclicTasks.Remove(cyclicTask);
     }
 }
示例#2
0
 public void Clear()
 {
     CyclicTask[] array = this.m_cyclicTasks.ToArray();
     for (int i = 0; i < array.Length; i++)
     {
         CyclicTask cyclicTask = array[i];
         this.UnregisterCyclicTask(cyclicTask);
     }
 }
示例#3
0
 public void RegisterCyclicTask(CyclicTask cyclicTask)
 {
     lock (this.m_sync)
     {
         this.m_cyclicTasks.Add(cyclicTask);
         cyclicTask.TaskEnded += new Action <CyclicTask>(this.UnregisterCyclicTask);
         cyclicTask.Start();
     }
 }
示例#4
0
 public void RegisterCyclicTask(CyclicTask cyclicTask)
 {
     lock (m_sync)
     {
         m_cyclicTasks.Add(cyclicTask);
         cyclicTask.TaskEnded += UnregisterCyclicTask;
         cyclicTask.Start();
     }
 }
示例#5
0
 public void UnregisterCyclicTask(Action method)
 {
     CyclicTask[] array = (
         from entry in this.m_cyclicTasks
         where entry.Action == method
         select entry).ToArray <CyclicTask>();
     for (int i = 0; i < array.Length; i++)
     {
         CyclicTask cyclicTask = array[i];
         this.UnregisterCyclicTask(cyclicTask);
     }
 }