예제 #1
0
            internal void CallMoveNext()
            {
                Task task = m_task;

                if (task != null)
                {
                    DebuggerSupport.TraceSynchronousWorkStart(CausalityTraceLevel.Required, task, CausalitySynchronousWork.Execution);
                }

                ExecutionContext.Run(
                    m_executionContext,
                    state => Unsafe.As <IAsyncStateMachine>(state).MoveNext(),
                    m_stateMachine);

                if (task != null)
                {
                    DebuggerSupport.TraceSynchronousWorkCompletion(CausalityTraceLevel.Required, CausalitySynchronousWork.Execution);
                }
            }
예제 #2
0
 public static void TraceSynchronousWorkStart(Task task)
 {
     DebuggerSupport.TraceSynchronousWorkStart(CausalityTraceLevel.Required, task, CausalitySynchronousWork.Execution);
 }