private static async Task RunTest(SendOptions sendOptions, ReceiveOptions receiveOptions, TableControl tableControl) { var result = await PerformanceTest.RunTest(sendOptions, receiveOptions); var text = $"send msgs at {sendOptions.MessageSizeKilobytes} kilobytes in size"; if (result == null) { Console.WriteLine($"Test failed: {text}"); } var messagesSentPerSecond = result.MessageSentTimes.MessagesSentCounter.Value / result.MessageSentTimes.MessageSentTimePerTimePeriod.TotalSeconds; var messagesReceivedPerSecond = result.MessageReceivedTimes.MessagesReceivedCounter.Value / result.MessageReceivedTimes.MessageRecievedTimePerTimePeriod.Elapsed.TotalSeconds; tableControl.AddRow(new List <TableCellControl>() { new TableCellControl(text), new TableCellControl($"{sendOptions.MaxDegreeOfParallelism}"), new TableCellControl($"{messagesSentPerSecond}"), new TableCellControl($"{receiveOptions.RebusNumberOfWorkers}"), new TableCellControl($"{receiveOptions.RebusMaxParallelism}"), new TableCellControl($"{messagesReceivedPerSecond}"), }); }