-
Notifications
You must be signed in to change notification settings - Fork 1.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
The key fixed unless the node transitions to the retired or dead state under the node's lock. When it does, the entry should not be visible from the caller's perspective. This was audited to verify correct usages. The conditional remove was modified to follow the standard pattern of remove, then transition. It was implemented as a conditional transition followed by a remove. This was legacy from CLHM where compute() methods had not originally been available. By using computeIfPresent to conditionally remove, we have more assurance of the correct behavior. The previous may have even been wrong if the value had been weak/soft GC'd. Relaxed reads should offer a slight performance improvement due to avoiding unnecessary memory barriers.
- Loading branch information
Showing
5 changed files
with
61 additions
and
62 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
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
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