-
Notifications
You must be signed in to change notification settings - Fork 3.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
PipelineBusV2 deadlock proofing (#16671)
* pipeline bus: add deadlock test for unlisten/unregisterSender * pipeline bus: eliminate deadlock Moves the sync-to-notify out of the `AddressStateMapping#mutate`'s effective synchronous block to eliminate a race condition where unlistening to an address and unregistering a sender could deadlock. It is safe to notify an AddressState's attached input without exclusive access to the AddressState, because notifying an input that has since been disconnected is net zero harm. (cherry picked from commit 8af6343)
- Loading branch information
1 parent
a94659c
commit d5d2876
Showing
2 changed files
with
70 additions
and
7 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters