コード例 #1
0
        public virtual void Dispose()
        {
            _runThread = false;
            _threadEvent.Set();
            if (_thread.IsStarted)
            {
                _thread.Join();
            }

            //ncrunch: no coverage start
            if (_diagnosticOutputRecorder != null)
            {
                _diagnosticOutputRecorder.Dispose();
                _diagnosticOutputRecorder = null;
            }
            //ncrunch: no coverage end

            using (var subscriptions = _micSubscriptions.Lock())
                while (subscriptions.Value.Count > 0)
                {
                    Unsubscribe(subscriptions.Value[0]);
                }

            using (var subscriptions = _vadSubscriptions.Lock())
                while (subscriptions.Value.Count > 0)
                {
                    Unsubscribe(subscriptions.Value[0]);
                }

            Log.Debug("Disposed pipeline");
        }
コード例 #2
0
        public virtual void Dispose()
        {
            _runThread = false;
            _threadEvent.Set();
            _thread.Join();

            Log.Info("Disposed pipeline");
        }