Example #1
0
 /// <summary>
 /// Releases unmanaged and - optionally - managed resources.
 /// </summary>
 /// <param name="isDisposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
 protected virtual void Dispose(bool isDisposing)
 {
     if (!IsDisposed)
     {
         if (isDisposing)
         {
             if (CountersAvailable != null && CountersAvailable.Count > 0)
             {
                 CountersAvailable.ToList().ForEach(x => {
                     x.Value.Close();
                     x.Value.Dispose();
                 });
             }
         }
         IsDisposed = true;
     }
 }
Example #2
0
        /// <summary>
        /// Releases unmanaged and - optionally - managed resources.
        /// </summary>
        /// <param name="isDisposing"><c>true</c> to release both managed and unmanaged resources; <c>false</c> to release only unmanaged resources.</param>
        protected virtual void Dispose(bool isDisposing)
        {
            if (_isDisposed)
            {
                return;
            }

            if (isDisposing)
            {
                var counters = CountersAvailable.ToList();

                counters.ForEach(_ => {
                    _.Value?.Close();
                    _.Value?.Dispose();
                });
            }
            _isDisposed = true;
        }