/// <summary> /// Finishes the updater thread. /// </summary> /// <exception cref="System.Exception">A error occured during termination of FT245RBitbangController ({0}) updater thread.</exception> private void FinishUpdaterThread() { if (UpdaterThread != null) { try { KeepUpdaterThreadAlive = false; UpdaterThreadSignal(); if (!UpdaterThread.Join(1000)) { UpdaterThread.Abort(); } UpdaterThread = null; } catch (Exception E) { Log.Exception("A error occured during termination of FT245RBitbangController ({0}) updater thread.".Build(SerialNumber), E); throw new Exception("A error occured during termination of FT245RBitbangController ({0}) updater thread.".Build(SerialNumber, E)); } } }
/// <summary> /// Finishes the updater thread. /// </summary> /// <exception cref="System.Exception">A error occured during termination of DirectStripController updater thread.</exception> private void FinishUpdaterThread() { if (UpdaterThread != null) { try { KeepUpdaterThreadAlive = false; UpdaterThreadSignal(); if (!UpdaterThread.Join(1000)) { UpdaterThread.Abort(); } UpdaterThread = null; } catch (Exception E) { Log.Exception("A error occured during termination of DirectStripController updater thread.", E); throw new Exception("A error occured during termination of DirectStripController updater thread.", E); } } }
/// <summary> /// Finishes the updater thread. /// </summary> private void FinishUpdaterThread() { if (UpdaterThread != null) { try { KeepUpdaterThreadAlive = false; UpdaterThreadSignal(); if (!UpdaterThread.Join(1000)) { UpdaterThread.Abort(); Log.Warning("{0} did not quit. Forcing abort.".Build(UpdaterThread.Name)); } UpdaterThread = null; } catch (Exception E) { Log.Exception("A error occured during termination of the {0}: {1}.".Build(UpdaterThread.Name), E); throw new Exception("A error occured during termination of the {0}: {1}.".Build(UpdaterThread.Name), E); } } }
/// <summary> /// Finishes the updater thread. /// </summary> /// <exception cref="System.Exception">A error occured during termination of ArtNet updater thread.</exception> private void FinishUpdaterThread() { if (UpdaterThread != null) { try { KeepUpdaterThreadAlive = false; lock (UpdaterThreadLocker) { Monitor.Pulse(UpdaterThreadLocker); } if (!UpdaterThread.Join(1000)) { UpdaterThread.Abort(); } UpdaterThread = null; } catch (Exception E) { Log.Exception("A error occured during termination of ArtNet updater thread.", E); throw new Exception("A error occured during termination of ArtNet updater thread.", E); } } }