Uh oh!
There was an error while loading. Please reload this page.
Fix class construction recursion issue in Lock on NativeAOT - #94241
Conversation
- The `Monitor` type was being constructed due to the use of `Monitor.DebugBlockingScope`, added that to the initialization phase - If necessary, an alternative may be to move `DebugBlockingScope` to be under `Lock`. Based on the comments the thread-static field is apparently bound-to in debugging scenarios. - Fixes#94227
ghost
commented
Oct 31, 2023
Tagging subscribers to this area: @agocke, @MichalStrehovsky, @jkotas Issue Details
|
jkotas
commented
Oct 31, 2023
These comments are left-overs from .NET Native for UWP. No debugger uses this field today. |
VSadov
commented
Nov 1, 2023
Although it did not cause problems before, if it is useless, perhaps removing |
kouvel
commented
Nov 1, 2023
Ah ok, thanks!
Sounds good to me, updated. Something like that could always be added as necessary. |
jkotas
commented
Nov 1, 2023
Yes, we should look into whether there is any diagnostic support required for the new Lock type, across all runtimes. |
Monitortype was being constructed due to the use ofMonitor.DebugBlockingScope, added that to the initialization phase so that the relevant type is initialized before it's used on the wait pathDebugBlockingScopeto be underLock, it would probably make more sense forMonitorto refer toLockas it already does, than the inverse. Based on the comments the thread-static field is apparently bound-to in debugging scenarios currently. Something to look into, for now this should unblock the CI.