-
Notifications
You must be signed in to change notification settings - Fork 5.3k
remove RuntimeAsyncTaskCore #122505
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
remove RuntimeAsyncTaskCore #122505
Conversation
|
Tagging subscribers to this area: @mangod9 |
src/coreclr/System.Private.CoreLib/src/System/Runtime/CompilerServices/AsyncHelpers.CoreCLR.cs
Outdated
Show resolved
Hide resolved
| // Information about current task dispatching, to be used for async | ||
| // stackwalking. | ||
| [ThreadStatic] | ||
| internal static unsafe DispatcherInfo* t_dispatcherInfo; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is it used from other places - can it be private?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Alternatively, it may look better for the DispatcherInfo to be a top-level type and have the static pointing the current one contained within the type. Something like:
internal struct AsyncDispatcherInfo
{
....
[ThreadStatic]
internal static unsafe AsyncDispatcherInfo* t_current; // Debugger depends on the exact name of this field.
...
}
8a225d0 to
56f4d42
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR removes the RuntimeAsyncTaskCore nested static class and promotes its contents to the top level, simplifying the code structure. The change refactors how async dispatcher information is organized without altering the functional behavior.
Key changes:
- Moved
DispatcherInfostruct from nestedRuntimeAsyncTaskCoreclass to top-level asAsyncDispatcherInfo - Renamed static field from
t_dispatcherInfotot_current - Updated all references throughout the
DispatchContinuationsmethod to use the new type and variable names
Resolves #122355