Ejemplo n.º 1
0
        protected override void DisposeAdditional()
        {
            lock (_syncRoot)
            {
                _entries.Clear();

                _localProperties.Clear();
                _properties.Clear();
            }

            base.DisposeAdditional();
        }
Ejemplo n.º 2
0
        /// <inheritdoc />
        protected override void DisposeAdditional()
        {
            foreach (var source in _sources)
            {
                source.RemoveListener(this);
            }

            // https://github.com/Kittyfisto/Tailviewer/issues/282
            _index.Clear();
            _properties.Clear();

            base.DisposeAdditional();
        }
Ejemplo n.º 3
0
        /// <inheritdoc />
        protected override void DisposeAdditional()
        {
            _source.RemoveListener(this);

            // https://github.com/Kittyfisto/Tailviewer/issues/282
            lock (_indices)
            {
                _indices.Clear();
                _indices.Capacity = 0;
            }

            _properties.Clear();
            _propertiesBuffer.Clear();
        }
Ejemplo n.º 4
0
        /// <inheritdoc />
        public void Dispose()
        {
            ILogSource logSource = _source;

            logSource?.Dispose();
            _taskScheduler.StopPeriodic(_task);

            // https://github.com/Kittyfisto/Tailviewer/issues/282
            _listeners.Clear();

            _properties.Clear();

            _source     = null;
            _isDisposed = true;
        }
Ejemplo n.º 5
0
        protected override void DisposeAdditional()
        {
            IReadOnlyList <ILogSource> logSources;

            lock (_syncRoot)
            {
                _isDisposed = true;
                logSources  = _logSources;
                _logSources = null;
                _properties.Clear();
                // We do not want to dispose those sources from within the lock!
                // We don't know what they're doing and for how long they're doing it...
            }
            // https://github.com/Kittyfisto/Tailviewer/issues/282
            Dispose(logSources);

            base.DisposeAdditional();
        }