Dispose() public method

public Dispose ( ) : void
return void
 private void Reconnect(ref LogEntriesConnection connection)
 {
     connection?.Dispose();
     connection = null;
     while (connection == null && _closed == 0)
     {
         try
         {
             connection = new LogEntriesConnection();
         }
         catch (Exception ex) // Unable to connect to Logentries.
         {
             Trace.WriteLine($"Connection failed: {ex.Message}.");
             Thread.Sleep(LogEntriesSettings.PauseBetweenReconnections);
         }
     }
 }
        private void MasterConsumeAndSendEvents()
        {
            LogEntriesConnection connection = null;

            try
            {
                Reconnect(ref connection);
                foreach (var datas in _queue.GetConsumingEnumerable())
                {
                    DoWithRetry(ref connection, datas.Item1, datas.Item2);
                    UpscaleIfNeeded();
                }
            }
            finally
            {
                connection?.Dispose();
            }
        }
        private void ConsumeAndSendEvents()
        {
            LogEntriesConnection connection = null;

            try
            {
                Reconnect(ref connection);
                foreach (var datas in _queue.GetConsumingEnumerable())
                {
                    DoWithRetry(ref connection, datas.Item1, datas.Item2);
                    Trace.Write(".");
                    if (!ContinueConsuming())
                    {
                        Interlocked.Decrement(ref _additionalThreadCount);
                        Trace.WriteLine($"Removed thread. Current count {_additionalThreadCount}. State {(_closed== 1?"closed":"running")}. Queue {_queue.Count}.");
                        return;
                    }
                }
            }
            finally
            {
                connection?.Dispose();
            }
        }