protected virtual void Dispose(bool disposing) { if (_disposed) { return; } if (disposing) { _messageProducer?.Dispose(); _asyncMessageProducer?.Dispose(); } _messageProducer = null; _asyncMessageProducer = null; _disposed = true; }