From 5e5aa9057558b6e53eae0036ebddb90ad7792f60 Mon Sep 17 00:00:00 2001 From: Pavel Krymets Date: Mon, 9 Apr 2018 14:26:28 -0700 Subject: [PATCH] Remove continue with --- .../Server/IISHttpServer.cs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/Microsoft.AspNetCore.Server.IISIntegration/Server/IISHttpServer.cs b/src/Microsoft.AspNetCore.Server.IISIntegration/Server/IISHttpServer.cs index ecfc361bd5..5b1a5262c2 100644 --- a/src/Microsoft.AspNetCore.Server.IISIntegration/Server/IISHttpServer.cs +++ b/src/Microsoft.AspNetCore.Server.IISIntegration/Server/IISHttpServer.cs @@ -144,12 +144,12 @@ namespace Microsoft.AspNetCore.Server.IISIntegration var server = (IISHttpServer)GCHandle.FromIntPtr(pvRequestContext).Target; Interlocked.Increment(ref server._outstandingRequests); - // TODO: Add try/catch and logging here - var context = server._iisContextFactory.CreateHttpContext(pInProcessHandler); - - var task = Task.Run(() => context.ProcessRequestAsync()); - - task.ContinueWith((t, state) => CompleteRequest((IISHttpContext)state, t), context); + _ = Task.Run( + async () => { + var context = server._iisContextFactory.CreateHttpContext(pInProcessHandler); + var result = await context.ProcessRequestAsync();; + CompleteRequest(context, result); + }); return NativeMethods.REQUEST_NOTIFICATION_STATUS.RQ_NOTIFICATION_PENDING; } @@ -168,10 +168,10 @@ namespace Microsoft.AspNetCore.Server.IISIntegration return NativeMethods.REQUEST_NOTIFICATION_STATUS.RQ_NOTIFICATION_PENDING; } - private static void CompleteRequest(IISHttpContext context, Task completedTask) + private static void CompleteRequest(IISHttpContext context, bool result) { // Post completion after completing the request to resume the state machine - context.PostCompletion(ConvertRequestCompletionResults(completedTask.Result)); + context.PostCompletion(ConvertRequestCompletionResults(result)); if (Interlocked.Decrement(ref context.Server._outstandingRequests) == 0 && context.Server.Stopping) {