2 types derived from Continuation
System.Private.CoreLib (2)
src\runtime\src\coreclr\System.Private.CoreLib\src\System\Runtime\CompilerServices\AsyncHelpers.ValueTaskSourceContinuation.cs (1)
13private sealed unsafe class ValueTaskSourceContinuation : Continuation
src\runtime\src\coreclr\System.Private.CoreLib\src\System\Runtime\CompilerServices\RuntimeAsyncTaskContinuation.cs (1)
10internal sealed unsafe class RuntimeAsyncTaskContinuation : Continuation, IThreadPoolWorkItem
13 instantiations of Continuation
System.Private.CoreLib (13)
src\runtime\src\coreclr\System.Private.CoreLib\src\System\Runtime\CompilerServices\AsyncHelpers.CoreCLR.cs (9)
371Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 407Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 454Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 504Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 542Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 592Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 635Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 666Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 1572Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation();
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\CompilerServices\AsyncHelpers.cs (4)
33Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 46Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 77Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 103Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation();
222 references to Continuation
System.Private.CoreLib (222)
src\runtime\src\coreclr\System.Private.CoreLib\src\System\Runtime\CompilerServices\AsyncHelpers.CoreCLR.cs (62)
58public delegate*<Continuation, ref byte, Continuation?> Resume; 77public Continuation? Next; 162public Continuation? NextContinuation; 197private static void AsyncSuspend(Continuation continuation) => throw new UnreachableException(); 205private static Continuation? AsyncCallContinuation() => throw new UnreachableException(); 226public delegate*<Continuation, int, Action, void> AwaiterContinuation; 241public Continuation? SentinelContinuation; 330private static unsafe Continuation AllocContinuation(Continuation prevContinuation, MethodTable* contMT) 333Continuation newContinuation = (Continuation)RuntimeImports.RhNewObject(contMT); 371Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 407Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 454Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 456Continuation nextCont; 504Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 542Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 544Continuation nextCont; 592Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 635Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 666Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 772private Continuation MoveContinuationState() 775Debug.Assert(stateObject is Continuation); 777return Unsafe.As<Continuation>(stateObject); 780private void SetContinuationState(Continuation value) 804Continuation sentinelContinuation = state.SentinelContinuation!; 805Continuation headContinuation = sentinelContinuation.Next!; 859Continuation contWithContinueFlags = valueTaskSourceCont; 909Continuation? nextContinuation = state.SentinelContinuation!.Next; 967Continuation curContinuation = asyncDispatcherInfo.NextContinuation; 968Continuation? nextContinuation = curContinuation.Next; 979Continuation? newContinuation = curContinuation.ResumeInfo->Resume(curContinuation, ref resultLoc); 995Continuation? handlerContinuation = UnwindToPossibleHandler(asyncDispatcherInfo.NextContinuation, ex, ref unwindedFrames); 1086Continuation curContinuation = asyncDispatcherInfo.NextContinuation; 1089Continuation? nextContinuation = curContinuation.Next; 1103Continuation? newContinuation = RuntimeAsyncInstrumentationHelpers.ResumeContinuation(ref asyncDispatcherInfo, flags, curContinuation, ref resultLoc); 1123Continuation? handlerContinuation = UnwindToPossibleHandler(asyncDispatcherInfo.NextContinuation, ex, ref unwindedFrames); 1185private static unsafe Continuation? UnwindToPossibleHandler(Continuation? continuation, Exception ex, ref uint unwindedFrames) 1206private bool QueueContinuationFollowUpActionIfNecessary(Continuation continuation) 1280Continuation? nextContinuation = state.SentinelContinuation!.Next; 1572Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 1771public static void SyncPointCheck(ref AsyncDispatcherInfo info, AsyncInstrumentation.Flags flags, Continuation curContinuation) 1803public static void QueueSuspendedRuntimeAsyncContext(ref AsyncDispatcherInfo info, AsyncInstrumentation.Flags flags, Continuation nextContinuation) 1820public static void AwaitSuspendedRuntimeAsyncContext(ref AsyncDispatcherInfo info, AsyncInstrumentation.Flags flags, Continuation curContinuation, Continuation newContinuation, Continuation? nextContinuation) 1853public static void UnwindRuntimeAsyncMethodUnhandledException(ref AsyncDispatcherInfo info, AsyncInstrumentation.Flags flags, Exception ex, Continuation curContinuation, uint unwindedFrames) 1874public static void UnwindRuntimeAsyncMethodHandledException(ref AsyncDispatcherInfo info, AsyncInstrumentation.Flags flags, Continuation curContinuation, uint unwindedFrames) 1896public static void ResumeRuntimeAsyncMethod(ref AsyncDispatcherInfo info, AsyncInstrumentation.Flags flags, Continuation curContinuation) 1913public static void CompleteRuntimeAsyncMethod(ref AsyncDispatcherInfo info, AsyncInstrumentation.Flags flags, Continuation curContinuation) 1932public static Continuation? ResumeContinuation(ref AsyncDispatcherInfo info, AsyncInstrumentation.Flags flags, Continuation curContinuation, ref byte resultLoc) 1959public static void SuspendAsyncContext(Continuation curContinuation, Continuation newContinuation) 1980public static void AsyncMethodUnhandledException(Task? task, Exception ex, Continuation curContinuation) 1990public static void AsyncMethodHandledException(Continuation curContinuation, uint unwindedFrames) 1995public static void ResumeAsyncMethod(ref AsyncDispatcherInfo info, Continuation curContinuation) 2003public static void CompleteAsyncMethod(Continuation curContinuation) 2008public static void HandleSuspended(Continuation? nextContinuation) 2016public static void HandleSuspendedFailed(Task task, Continuation? nextContinuation)
src\runtime\src\coreclr\System.Private.CoreLib\src\System\Runtime\CompilerServices\AsyncHelpers.ValueTaskSourceContinuation.cs (2)
90private static Continuation? ResumeValueTaskSourceContinuation(Continuation cont, ref byte result)
src\runtime\src\coreclr\System.Private.CoreLib\src\System\Runtime\CompilerServices\AsyncProfiler.CoreCLR.cs (140)
40public static void Create(Task dispatcher, Continuation nextContinuation) 100Debug.Assert(info.AsyncProfilerInfo.CurrentContinuation is Continuation); 101AsyncCallstack.EmitResumeEvent(context, currentTimestamp, dispatcherId, wrapperIndex, Unsafe.As<Continuation>(info.AsyncProfilerInfo.CurrentContinuation)); 114public static void Suspend(ref AsyncDispatcherInfo info, Continuation nextContinuation) 261public static Continuation? Dispatch(ref AsyncDispatcherInfo info, Continuation curContinuation, ref byte resultLoc) 266return ((delegate*<Continuation, ref byte, Continuation?>)(dispatcher))(curContinuation, ref resultLoc); 273private static unsafe Continuation? Continuation_Wrapper_0(Continuation continuation, ref byte resultLoc) 279private static unsafe Continuation? Continuation_Wrapper_1(Continuation continuation, ref byte resultLoc) 285private static unsafe Continuation? Continuation_Wrapper_2(Continuation continuation, ref byte resultLoc) 291private static unsafe Continuation? Continuation_Wrapper_3(Continuation continuation, ref byte resultLoc) 297private static unsafe Continuation? Continuation_Wrapper_4(Continuation continuation, ref byte resultLoc) 303private static unsafe Continuation? Continuation_Wrapper_5(Continuation continuation, ref byte resultLoc) 309private static unsafe Continuation? Continuation_Wrapper_6(Continuation continuation, ref byte resultLoc) 315private static unsafe Continuation? Continuation_Wrapper_7(Continuation continuation, ref byte resultLoc) 321private static unsafe Continuation? Continuation_Wrapper_8(Continuation continuation, ref byte resultLoc) 327private static unsafe Continuation? Continuation_Wrapper_9(Continuation continuation, ref byte resultLoc) 333private static unsafe Continuation? Continuation_Wrapper_10(Continuation continuation, ref byte resultLoc) 339private static unsafe Continuation? Continuation_Wrapper_11(Continuation continuation, ref byte resultLoc) 345private static unsafe Continuation? Continuation_Wrapper_12(Continuation continuation, ref byte resultLoc) 351private static unsafe Continuation? Continuation_Wrapper_13(Continuation continuation, ref byte resultLoc) 357private static unsafe Continuation? Continuation_Wrapper_14(Continuation continuation, ref byte resultLoc) 363private static unsafe Continuation? Continuation_Wrapper_15(Continuation continuation, ref byte resultLoc) 369private static unsafe Continuation? Continuation_Wrapper_16(Continuation continuation, ref byte resultLoc) 375private static unsafe Continuation? Continuation_Wrapper_17(Continuation continuation, ref byte resultLoc) 381private static unsafe Continuation? Continuation_Wrapper_18(Continuation continuation, ref byte resultLoc) 387private static unsafe Continuation? Continuation_Wrapper_19(Continuation continuation, ref byte resultLoc) 393private static unsafe Continuation? Continuation_Wrapper_20(Continuation continuation, ref byte resultLoc) 399private static unsafe Continuation? Continuation_Wrapper_21(Continuation continuation, ref byte resultLoc) 405private static unsafe Continuation? Continuation_Wrapper_22(Continuation continuation, ref byte resultLoc) 411private static unsafe Continuation? Continuation_Wrapper_23(Continuation continuation, ref byte resultLoc) 417private static unsafe Continuation? Continuation_Wrapper_24(Continuation continuation, ref byte resultLoc) 423private static unsafe Continuation? Continuation_Wrapper_25(Continuation continuation, ref byte resultLoc) 429private static unsafe Continuation? Continuation_Wrapper_26(Continuation continuation, ref byte resultLoc) 435private static unsafe Continuation? Continuation_Wrapper_27(Continuation continuation, ref byte resultLoc) 441private static unsafe Continuation? Continuation_Wrapper_28(Continuation continuation, ref byte resultLoc) 447private static unsafe Continuation? Continuation_Wrapper_29(Continuation continuation, ref byte resultLoc) 453private static unsafe Continuation? Continuation_Wrapper_30(Continuation continuation, ref byte resultLoc) 459private static unsafe Continuation? Continuation_Wrapper_31(Continuation continuation, ref byte resultLoc) 467wrappers[0] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_0; 468wrappers[1] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_1; 469wrappers[2] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_2; 470wrappers[3] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_3; 471wrappers[4] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_4; 472wrappers[5] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_5; 473wrappers[6] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_6; 474wrappers[7] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_7; 475wrappers[8] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_8; 476wrappers[9] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_9; 477wrappers[10] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_10; 478wrappers[11] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_11; 479wrappers[12] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_12; 480wrappers[13] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_13; 481wrappers[14] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_14; 482wrappers[15] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_15; 483wrappers[16] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_16; 484wrappers[17] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_17; 485wrappers[18] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_18; 486wrappers[19] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_19; 487wrappers[20] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_20; 488wrappers[21] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_21; 489wrappers[22] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_22; 490wrappers[23] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_23; 491wrappers[24] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_24; 492wrappers[25] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_25; 493wrappers[26] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_26; 494wrappers[27] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_27; 495wrappers[28] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_28; 496wrappers[29] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_29; 497wrappers[30] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_30; 498wrappers[31] = (nint)(delegate*<Continuation, ref byte, Continuation?>)&Continuation_Wrapper_31; 552public Continuation? Continuation; 566public static void EmitCreateEvent(AsyncThreadContext context, long currentTimestamp, ulong parentDispatcherId, ulong dispatcherId, Continuation? asyncCallstack) 573public static void EmitSuspendEvent(AsyncThreadContext context, long currentTimestamp, ulong dispatcherId, Continuation? asyncCallstack) 580public static void EmitResumeEvent(AsyncThreadContext context, long currentTimestamp, ulong dispatcherId, byte continuationIndex, Continuation? asyncCallstack)
src\runtime\src\coreclr\System.Private.CoreLib\src\System\Runtime\CompilerServices\RuntimeAsyncTaskContinuation.cs (2)
153private static Continuation? ResumeTaskContinuation(Continuation cont, ref byte result)
src\runtime\src\libraries\System.Private.CoreLib\src\System\Runtime\CompilerServices\AsyncHelpers.cs (6)
33Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 46Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 54Continuation headContinuation, int offset, Action continuation) 77Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 103Continuation? sentinelContinuation = state.SentinelContinuation ??= new Continuation(); 111Continuation headContinuation, int offset, Action continuation)
src\runtime\src\libraries\System.Private.CoreLib\src\System\Threading\Tasks\Task.cs (10)
239internal static void ReplaceOrAddRuntimeAsyncContinuationTimestamp(Continuation curContinuation, Continuation newContinuation) 256internal static void TryAddRuntimeAsyncContinuationChainTimestamps(Continuation continuationChain) 262Continuation? nc = continuationChain; 271internal static void RemoveRuntimeAsyncContinuationTimestamp(Continuation continuation) 283internal static void RemoveRuntimeAsyncContinuationChainTimestamps(Continuation continuation, uint count) 291Continuation? nc = continuation; 300internal static void UpdateRuntimeAsyncTaskTimestamp(Task task, Continuation timestampSource) 338internal static void RemoveRuntimeAsyncTask(Task task, Continuation continuationChain) 348Continuation? nc = continuationChain;