protected override bool OnSlaveLeft(SlaveContext slave)
 {
     foreach (ThreadContext thread in slave.Threads)
     {
         if (thread.State == ThreadState.Running)
         {
             return false;
         }
     }
     return true;
 }
 protected override void OnSlaveJoined(SlaveContext slave)
 {
     if (State != MasterState.Running)
     {
         CreateThreads(slave);
         if (TotalSlotsCount >= startUpThreadsCount)
         {
             Start();
         }
     }
 }