public void Execute()
 {
     State = BusyTaskState.Executing;
     _semaphore.WaitOne();
     State = BusyTaskState.Completed;
 }
 public void Execute()
 {
     State = BusyTaskState.Executing;
     _semaphore.WaitOne();
     State = BusyTaskState.Completed;
 }
 public BusyTask()
 {
     _semaphore = new Semaphore(0, 1);
     State      = BusyTaskState.Queued;
 }
 public BusyTask()
 { 
     _semaphore = new Semaphore(0, 1);
     State = BusyTaskState.Queued;
 }