-
Notifications
You must be signed in to change notification settings - Fork 4.8k
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
Don't dispose timers if we're in our UnhandledException handler. #104828
Don't dispose timers if we're in our UnhandledException handler. #104828
Conversation
@StephenMolloy This needs to target the release/8.0-staging branch, not the release/8.0 branch directly. Can you please make the change? Make sure the branch switch doesn't accidentally bring in unrelated commits. |
Because this change affects an OOB package:
You'll also have to follow these instructions to enable building the package: https://github.com/dotnet/runtime/blob/main/docs/project/library-servicing.md#check-if-a-package-is-generated OOB assemblies don't get built by default in servicing branches. |
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.
OOB
2e4661c
to
43a164f
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.
Thanks. OOB changes look good.
Closed in favor of #106221 |
Timer was updated in 5.0 to improve performance, but is prone to deadlocks when manipulated in an unhandled exception handler. Which MemoryCache does. And MemoryCache is probably more likely to witness unhandled exceptions like OOM than typical code.
Original Issue: #64115 (and #102666)
.Net 9.0 PR: #103937
System.Runtime.Caching is an OOB package that ships alongside the runtime.