-
Notifications
You must be signed in to change notification settings - Fork 5.1k
Remove locks from COM events delegate management. #75863
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
Remove locks from COM events delegate management. #75863
Conversation
This removes locks and instead assumes the collection is immutable.
/cc @dotnet/interop-contrib |
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Outdated
Show resolved
Hide resolved
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Outdated
Show resolved
Hide resolved
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Outdated
Show resolved
Hide resolved
@stephentoub The CI is green. Any other thoughts? |
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Show resolved
Hide resolved
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Outdated
Show resolved
Hide resolved
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Outdated
Show resolved
Hide resolved
Was there an actual problem or you did not like the result? (It looks better to me with arrays instead of List.) |
It was an option. However, I needed to create a |
This reverts commit aa3dddd.
doesn't seem to be any value to using that mechanism. An added bonus is that it simplifies the logic.
@jkotas @stephentoub I switched back to using arrays, let me know if you prefer |
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Outdated
Show resolved
Hide resolved
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Outdated
Show resolved
Hide resolved
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Outdated
Show resolved
Hide resolved
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Outdated
Show resolved
Hide resolved
src/libraries/Common/src/System/Runtime/InteropServices/ComEventsMethod.cs
Outdated
Show resolved
Hide resolved
/backport to release/7.0 |
Started backporting to release/7.0: https://github.com/dotnet/runtime/actions/runs/3108191020 |
/backport to release/6.0 |
Started backporting to release/6.0: https://github.com/dotnet/runtime/actions/runs/3108193116 |
This removes locks and instead assumes the collection is immutable.
Fixes #73754