diff --git a/src/Hosting/Hosting/ref/Microsoft.AspNetCore.Hosting.netcoreapp.cs b/src/Hosting/Hosting/ref/Microsoft.AspNetCore.Hosting.netcoreapp.cs index b87c115dea..0ed621abe1 100644 --- a/src/Hosting/Hosting/ref/Microsoft.AspNetCore.Hosting.netcoreapp.cs +++ b/src/Hosting/Hosting/ref/Microsoft.AspNetCore.Hosting.netcoreapp.cs @@ -50,6 +50,7 @@ namespace Microsoft.AspNetCore.Hosting public static void Run(this Microsoft.AspNetCore.Hosting.IWebHost host) { } [System.Diagnostics.DebuggerStepThroughAttribute] public static System.Threading.Tasks.Task RunAsync(this Microsoft.AspNetCore.Hosting.IWebHost host, System.Threading.CancellationToken token = default(System.Threading.CancellationToken)) { throw null; } + [System.Diagnostics.DebuggerStepThroughAttribute] public static System.Threading.Tasks.Task StopAsync(this Microsoft.AspNetCore.Hosting.IWebHost host, System.TimeSpan timeout) { throw null; } public static void WaitForShutdown(this Microsoft.AspNetCore.Hosting.IWebHost host) { } [System.Diagnostics.DebuggerStepThroughAttribute] diff --git a/src/Hosting/Hosting/src/WebHostExtensions.cs b/src/Hosting/Hosting/src/WebHostExtensions.cs index b1b317272b..fe77b13443 100644 --- a/src/Hosting/Hosting/src/WebHostExtensions.cs +++ b/src/Hosting/Hosting/src/WebHostExtensions.cs @@ -19,9 +19,10 @@ namespace Microsoft.AspNetCore.Hosting /// The timeout for stopping gracefully. Once expired the /// server may terminate any remaining active connections. /// A that completes when the stops. - public static Task StopAsync(this IWebHost host, TimeSpan timeout) + public static async Task StopAsync(this IWebHost host, TimeSpan timeout) { - return host.StopAsync(new CancellationTokenSource(timeout).Token); + using var cts = new CancellationTokenSource(timeout); + await host.StopAsync(cts.Token); } ///