public async Task StartAsync()
        {
            await Initialize().ConfigureAwait(false);

            await _messagePump.StartAsync <T>(Handle).ConfigureAwait(false);
        }
        public async Task StartAsync(CancellationToken cancellationToken)
        {
            await Initialize().ConfigureAwait(false);

            await _messagePump.StartAsync <T>(Handle, cancellationToken).ConfigureAwait(false);
        }