20 writes to m_stateFlags
mscorlib (20)
system\threading\Tasks\Future.cs (2)
483Interlocked.Exchange(ref m_stateFlags, m_stateFlags | TASK_STATE_RAN_TO_COMPLETION); 517m_stateFlags |= TASK_STATE_RAN_TO_COMPLETION;
system\threading\Tasks\Task.cs (17)
321m_stateFlags = TASK_STATE_CANCELED | TASK_STATE_CANCELLATIONACKNOWLEDGED | optionFlags; 328m_stateFlags = TASK_STATE_RAN_TO_COMPLETION | optionFlags; 345m_stateFlags = TASK_STATE_WAITINGFORACTIVATION | (int)InternalTaskOptions.PromiseTask; 639m_stateFlags = tmpFlags; // one write to the volatile m_stateFlags instead of two when setting the above options 820if (Interlocked.CompareExchange(ref m_stateFlags, oldFlags | newBits, oldFlags) == oldFlags) 835if (Interlocked.CompareExchange(ref m_stateFlags, oldFlags | newBits, oldFlags) == oldFlags) 871if (Interlocked.CompareExchange(ref m_stateFlags, newFlags, oldFlags) == oldFlags) break; 980m_stateFlags |= Task.TASK_STATE_TASKSCHEDULED_WAS_FIRED; 1775m_stateFlags |= TASK_STATE_EXECUTIONCONTEXT_IS_NULL; 1896m_stateFlags |= TASK_STATE_DISPOSED; 1928m_stateFlags |= TASK_STATE_STARTED; 2175m_stateFlags |= TASK_STATE_EXCEPTIONOBSERVEDBYPARENT; 2323Interlocked.Exchange(ref m_stateFlags, m_stateFlags | completionState); 2751m_stateFlags |= TASK_STATE_DELEGATE_INVOKED; 2760int prevState = Interlocked.Exchange(ref m_stateFlags, m_stateFlags | TASK_STATE_CANCELED); 3547Interlocked.Exchange(ref m_stateFlags, m_stateFlags | TASK_STATE_CANCELED); 3578m_stateFlags |= TASK_STATE_CANCELLATIONACKNOWLEDGED;
system\threading\Tasks\TaskContinuation.cs (1)
257task.m_stateFlags |= Task.TASK_STATE_STARTED;
34 references to m_stateFlags
mscorlib (34)
system\threading\Tasks\Future.cs (1)
483Interlocked.Exchange(ref m_stateFlags, m_stateFlags | TASK_STATE_RAN_TO_COMPLETION);
system\threading\Tasks\Task.cs (32)
630Contract.Assert(m_stateFlags == 0, "TaskConstructorCore: non-zero m_stateFlags"); 794int stateFlags = m_stateFlags; // "cast away" volatility to enable inlining of OptionsMethod 818int oldFlags = m_stateFlags; 833oldFlags = m_stateFlags; 869int oldFlags = m_stateFlags; 918return (m_stateFlags & (Task.TASK_STATE_WAIT_COMPLETION_NOTIFICATION | Task.TASK_STATE_RAN_TO_COMPLETION)) 947get { return (m_stateFlags & TASK_STATE_WAIT_COMPLETION_NOTIFICATION) != 0; } 978if (etwLog.IsEnabled() && (m_stateFlags & Task.TASK_STATE_TASKSCHEDULED_WAS_FIRED) == 0) 1074int flags = m_stateFlags; 1179int flags = m_stateFlags; 1264Contract.Assert((m_stateFlags & TASK_STATE_CANCELED) != 0, "Task.RunSynchronously: expected TASK_STATE_CANCELED to be set"); 1433int sf = m_stateFlags; 1464return (m_stateFlags & (TASK_STATE_CANCELED | TASK_STATE_FAULTED)) == TASK_STATE_CANCELED; 1535get { return (m_stateFlags & TASK_STATE_CANCELLATIONACKNOWLEDGED) != 0; } 1552int stateFlags = m_stateFlags; // enable inlining of IsCompletedMethod by "cast"ing away the volatility 1567get { return (m_stateFlags & TASK_STATE_COMPLETED_MASK) == TASK_STATE_RAN_TO_COMPLETION; } 1597bool isDisposed = (m_stateFlags & TASK_STATE_DISPOSED) != 0; 1746return ((m_stateFlags & TASK_STATE_FAULTED) != 0); 1759if ((m_stateFlags & TASK_STATE_EXECUTIONCONTEXT_IS_NULL) == TASK_STATE_EXECUTIONCONTEXT_IS_NULL) 1915Contract.Assert((m_stateFlags & TASK_STATE_STARTED) == 0, "task has already started"); 2188return (m_stateFlags & TASK_STATE_EXCEPTIONOBSERVEDBYPARENT) != 0; 2199return (m_stateFlags & TASK_STATE_DELEGATE_INVOKED) != 0; 2323Interlocked.Exchange(ref m_stateFlags, m_stateFlags | completionState); 2356&& (((TaskCreationOptions)(m_stateFlags & OptionsMask)) & TaskCreationOptions.AttachedToParent) != 0) 2760int prevState = Interlocked.Exchange(ref m_stateFlags, m_stateFlags | TASK_STATE_CANCELED); 3187Contract.Assert((m_stateFlags & TASK_STATE_FAULTED) == 0, "Task.Wait() completing when in Faulted state."); 3401if ((m_stateFlags & TASK_STATE_STARTED) != 0) 3464else if (!mustCleanup && (m_stateFlags & TASK_STATE_STARTED) == 0) 3541Contract.Assert((m_stateFlags & (TASK_STATE_CANCELED | TASK_STATE_COMPLETION_RESERVED)) != 0, "Task.CancellationCleanupLogic(): Task not canceled or reserved."); 3547Interlocked.Exchange(ref m_stateFlags, m_stateFlags | TASK_STATE_CANCELED); 3608bool bCanInlineContinuations = !(((m_stateFlags & TASK_STATE_THREAD_WAS_ABORTED) != 0) || 3610((m_stateFlags & (int)TaskCreationOptions.RunContinuationsAsynchronously) != 0));
system\threading\Tasks\TaskContinuation.cs (1)
274(task.m_stateFlags & Task.TASK_STATE_THREAD_WAS_ABORTED) != 0)) // this ensures TAEs from QueueTask will be wrapped in TSE