protected override async Task <Task> StartCoreAsync() { Log.Info("Starting broker in directory {0}", _workingDir); await Task .WhenAll( _connectionListener.StartAsync(), _brokerProcessor.StartAsync(), _connectionTracker.StartAsync()) .ConfigureAwait(false); Log.Info("Broker started in directory {0}", _workingDir); return(ProcessAsync()); }