protected virtual void Dispose(bool disposing)
        {
            if (_disposed)
            {
                return;
            }

            if (disposing)
            {
                _pool = null;
                _metrics.RemovePoolMetrics(Id);
                _metrics = null;
            }


            //Mark as disposed
            _disposed = true;
        }
 public void Dispose()
 {
     _pool = null;
     _metrics.RemovePoolMetrics(Id);
     _metrics = null;
 }