예제 #1
0
 /// <summary>
 /// 工作完成
 /// </summary>
 /// <param name="Result"></param>
 public void EndWork(WorkUnitResultEnum Result)
 {
     if (_WorkEnd != null)
     {
         _WorkEnd(this, new WorkUnitEndEventArgs(Result));
     }
 }
예제 #2
0
        private void WorkCycle(object sender, WorkUnitEndEventArgs e)
        {
            if (e != null)
            {
                WorkUnits[CurrentWorkIdx].WorkEnd -= WorkCycle;
                CurrentWorkResult = e.WorkResult;
                if (CurrentWorkResult == WorkUnitResultEnum.Cancel)
                {
                    return;
                }
            }

            if (++CurrentWorkIdx > WorkUnits.Length)
            {
                return;
            }

            WorkUnits[CurrentWorkIdx].WorkEnd += WorkCycle;

            WorkUnits[CurrentWorkIdx].BeginWork(Parameter);
        }
예제 #3
0
 /// <summary>
 /// 构造函数
 /// </summary>
 /// <param name="Result"></param>
 public WorkUnitEndEventArgs(WorkUnitResultEnum Result)
 {
     WorkResult = Result;
 }