public async Task StartAsync() { if (publisher != null) { return; } publisher = new RabbitMqPublisher(); consumer = new RabbitMqConsumer(); await Task.WhenAll(publisher.StartAsync(), consumer.StartAsync()); }
public static async Task GenerateStatsAsync(int numberOfSecondsToRun) { var sender = new RabbitMqPublisher(); var receiver = new RabbitMqConsumer(); try { await sender.StartAsync(); await receiver.StartAsync(); await Task.Delay(numberOfSecondsToRun * 1000); } finally { await sender.StopAsync(); await receiver.StopAsync(); } }