diff options
-rw-r--r-- | src/System.Private.CoreLib/shared/System/Threading/Tasks/ValueTask.cs | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/System.Private.CoreLib/shared/System/Threading/Tasks/ValueTask.cs b/src/System.Private.CoreLib/shared/System/Threading/Tasks/ValueTask.cs index 7ffb4bb8ec..285d3bf308 100644 --- a/src/System.Private.CoreLib/shared/System/Threading/Tasks/ValueTask.cs +++ b/src/System.Private.CoreLib/shared/System/Threading/Tasks/ValueTask.cs @@ -740,6 +740,7 @@ namespace System.Threading.Tasks } /// <summary>Gets the result.</summary> + [DebuggerBrowsable(DebuggerBrowsableState.Never)] // prevent debugger evaluation from invalidating an underling IValueTaskSource<T> public TResult Result { [MethodImpl(MethodImplOptions.AggressiveInlining)] @@ -780,6 +781,8 @@ namespace System.Threading.Tasks { if (IsCompletedSuccessfully) { + Debugger.NotifyOfCrossThreadDependency(); // prevent debugger evaluation from invalidating an underling IValueTaskSource<T> unless forced + TResult result = Result; if (result != null) { |