Open WilliamXieMSFT opened 4 years ago
I couldn't figure out the best area label to add to this issue. If you have write-permissions please help me learn by adding exactly one area label.
area-Diagnostics-coreclr @tommcdon
Tagging subscribers to this area: @tommcdon Notify danmosemsft if you want to be subscribed.
CC @dotnet/dotnet-diag @mikem8361
@davmason
I looked at this last week with @WilliamXieMSFT, it's just plain broken and there's no workaround to make the API work.
The options for getting finalizer references are:
Description
The finalizer queue segment enumeration appears to be not implemented. See here: https://github.com/dotnet/runtime/blob/master/src/coreclr/src/debug/daccess/dacdbiimpl.cpp#L7488, mFQStart/mFQEnd is set to null and never updated.
Configuration
This potentially affects all .NET Framework & Core (all versions). I tested using .NET 4.8.4180.0 on Windows 19041.329. This would affect both x86 and x64 configuration (not sure about ARM).
Regression?
N/A
Other information
Current workarounds would be to use CLRMD (via SOS & DAC) to get finalizer queue address start/end or leveraging ICorProfiler apis for Finalizer callbacks.