public void Run() { try { logger.LogInformation($"Started {nameof(App)}"); runner.RunDasBlog(); Thread.Sleep(1000); tester.Test(); publisher.Publish(tester.Results.Results); } finally { try { runner?.Kill(); tester?.Dispose(); } catch (System.Exception ex) { logger.LogDebug($"failed to kill runner or dispose tester {ex.Message}"); } } }