Пример #1
0
 public void StartTerminationDetection()
 {
     DetectingTermination = true;
     Task.Run(() =>
     {
         while (DetectingTermination)
         {
             Thread.Sleep(100);
             lock (AllNodesLock)
             {
                 if (AllNodes.All(n => n.IsValid() && DateTime.Now.Subtract(n.LastReceivedMessageTime) > TimeSpan.FromMilliseconds(400)))
                 {
                     OnTerminated();
                     DetectingTermination = false;
                 }
             }
         }
     });
 }