diff --git a/src/Microsoft.AspNet.Server.WebListener/AwaitableThrottle.cs b/src/Microsoft.AspNet.Server.WebListener/AwaitableThrottle.cs index dc0baa555f..643041b830 100644 --- a/src/Microsoft.AspNet.Server.WebListener/AwaitableThrottle.cs +++ b/src/Microsoft.AspNet.Server.WebListener/AwaitableThrottle.cs @@ -1,5 +1,5 @@ //------------------------------------------------------------------------------ -// +// // Copyright (c) Microsoft Corporation. All rights reserved. // //------------------------------------------------------------------------------ @@ -13,7 +13,7 @@ namespace Microsoft.AspNet.Server.WebListener /// /// Awaitable object that acts like a semaphore. The object would wait if more than maxConcurrent number of clients waits on it /// - public class AwaitableThrottle + internal class AwaitableThrottle { private static readonly TaskAwaiter CompletedAwaiter = Task.FromResult(true).GetAwaiter(); diff --git a/src/Microsoft.AspNet.Server.WebListener/OwinWebListener.cs b/src/Microsoft.AspNet.Server.WebListener/OwinWebListener.cs index f9ed3fda72..460c7d9e84 100644 --- a/src/Microsoft.AspNet.Server.WebListener/OwinWebListener.cs +++ b/src/Microsoft.AspNet.Server.WebListener/OwinWebListener.cs @@ -500,6 +500,8 @@ namespace Microsoft.AspNet.Server.WebListener } catch (Exception ex) { + // Request processing failed to be queued in threadpool + // Log the error message, release throttle and move on LogHelper.LogException(_logger, "ProcessRequestAsync", ex); _requestProcessingThrottle.Release(); }