From 571c9f0a348d627edf9eac7c0e8418a4d5685c35 Mon Sep 17 00:00:00 2001 From: David Fowler Date: Sat, 21 Mar 2020 07:30:55 -0700 Subject: [PATCH] Allow shutting down even if startup fails. (#164) - Running a process starts a loop directly when starting up, instead of it should yield so that StartAsync can return. --- src/Microsoft.Tye.Hosting/ProcessRunner.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Microsoft.Tye.Hosting/ProcessRunner.cs b/src/Microsoft.Tye.Hosting/ProcessRunner.cs index f4247566..57ba96e8 100644 --- a/src/Microsoft.Tye.Hosting/ProcessRunner.cs +++ b/src/Microsoft.Tye.Hosting/ProcessRunner.cs @@ -123,6 +123,9 @@ namespace Microsoft.Tye.Hosting async Task RunApplicationAsync(IEnumerable<(int Port, int BindingPort, string? Protocol)> ports) { + // Make sure we yield before trying to start the process, this is important so we don't hang startup + await Task.Yield(); + var hasPorts = ports.Any(); var environment = new Dictionary