You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
usingSystem.Diagnostics.Tracing;MyEventSourceeventSource=newMyEventSource();Console.WriteLine("MyEventSource is ready to be enabled");Console.ReadLine();[EventSource(Name="MyEventSource")]classMyEventSource:EventSource{overrideprotectedvoidOnEventCommand(EventCommandEventArgscommand){Console.WriteLine($"Command: {command.Command}");this.Dispose();Console.WriteLine($"Dispose() complete");}}
dotnet-trace collect --providers MyEventSource -p <pid of running sample>
Expected behavior
Sample's output
MyEventSource is ready to be enabled
Command: Enable
Dispose() complete
Actual behavior
Sample's output
MyEventSource is ready to be enabled
Command: Enable
Regression?
No response
Known Workarounds
No response
Configuration
No response
Other information
No response
The text was updated successfully, but these errors were encountered:
Description
#80666 uncovered an issue where EventPipeEventProvider's callback had been invoked after the gchandle was freed. To align EventPipe with ETW which blocks disposal for in-flight callbacks, #106040 added a signal wait/set blocking behavior to
ep_delete_provider
. As a result, a deadlock can occur should users invoke EventPipeEventProvider's Unregister orep_delete_provider
within a callback.The same behavior is exhibited on ETW
Reproduction Steps
dotnet-trace collect --providers MyEventSource -p <pid of running sample>
Expected behavior
Sample's output
Actual behavior
Sample's output
Regression?
No response
Known Workarounds
No response
Configuration
No response
Other information
No response
The text was updated successfully, but these errors were encountered: