diff --git a/src/Microsoft.AspNetCore.Mvc.Core/Internal/TaskCache.cs b/src/Microsoft.AspNetCore.Mvc.Core/Internal/TaskCache.cs index 504d65931b..4cc9c124fa 100644 --- a/src/Microsoft.AspNetCore.Mvc.Core/Internal/TaskCache.cs +++ b/src/Microsoft.AspNetCore.Mvc.Core/Internal/TaskCache.cs @@ -7,23 +7,18 @@ namespace Microsoft.AspNetCore.Mvc.Internal { public static class TaskCache { -#if NET451 - static readonly Task _completedTask = Task.FromResult(0); -#endif - /// Gets a task that's already been completed successfully. - /// May not always return the same instance. - public static Task CompletedTask - { - get - { + /// + /// A that's already completed successfully. + /// + /// + /// We're caching this in a static readonly field to make it more inlinable and avoid the volatile lookup done + /// by Task.CompletedTask. + /// #if NET451 - return _completedTask; + public static readonly Task CompletedTask = Task.FromResult(0); #else - return Task.CompletedTask; + public static readonly Task CompletedTask = Task.CompletedTask; #endif - } - } } - }