private void StartDequeueThread() { int t_age = _threadAge; while (t_age > 0) { try { _queue.Dequeue(); } catch { } Interlocked.Decrement(ref t_age); } Interlocked.Decrement(ref _threadCount); }