-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Closed
Labels
area-Diagnostics-coreclrin-prThere is an active PR which will close this issue when it is mergedThere is an active PR which will close this issue when it is merged
Milestone
Description
In dotnet/coreclr#18160 and dotnet/coreclr#18213 for 3.0 we added a basic dumpasync
command to SOS. Before we actually ship it, we should try to augment it in a few ways:
- Remove the dependency on interpreting the C# state machine's _state field. We can use the Task's IsCompleted for the same purpose.
- Add support for following continuation chains. Right now we use gcroots for this purpose, which can actually be more comprehensive, but also adds a lot of runtime expense.
- Support optionally finding all Tasks, not just async state machine objects; that's fairly easily done with dumpheap today, but the gcroot automation, completion detection, and continuation-chain following from (2) all make it much more useful in dumpasync than it is in dumpheap.
- List all thread stacks waiting on tasks, and dump the associated information for that task (state machine if it's an async method, gcroot / continuation chain, etc.)
cc: @noahfalk
patricksuo
Metadata
Metadata
Assignees
Labels
area-Diagnostics-coreclrin-prThere is an active PR which will close this issue when it is mergedThere is an active PR which will close this issue when it is merged