/// <summary> /// Watchdog. /// 看门狗 /// 启动navdata获取线程获取 /// /// </summary> /// <param name="token">Cancellation token.</param> protected override void Loop(CancellationToken token) { while (token.IsCancellationRequested == false) { if (_navdataAcquisition.IsAlive == false) { _navdataAcquisition.Start(); } Thread.Sleep(10); } //循环结束时 //消除所有启动的线程 if (_navdataAcquisition.IsAlive) { _navdataAcquisition.Stop(); } if (_commandSender.IsAlive) { _commandSender.Stop(); } if (_videoAcquisition.IsAlive) { _videoAcquisition.Stop(); } }
protected override void Loop(CancellationToken token) { while (token.IsCancellationRequested == false) { if (_navdataAcquisition.IsAlive == false) { _navdataAcquisition.Start(); } else if (_navdataAcquisition.IsAcquiring) { if (_commandSender.IsAlive == false) { _commandSender.Start(); } if (_videoAcquisition.IsAlive == false) { _videoAcquisition.Start(); } } Thread.Sleep(100); } _navdataAcquisition.Stop(); _commandSender.Stop(); _videoAcquisition.Stop(); }