我希望能够释放像compute()这样的原子执行的锁来等待条件,我怎么能这样做呢?是否有类似于wait() (等待条件)的东西,仅用于compute() of ConcurrentHashMap (或AtomicReference的getAnd*()函数)中的当前密钥,但实际上会在Java8中释放锁吗?我知道,如果我对每个键都有一个单独的对象/锁列表,并且使用一个普通的旧synchronized块,我可以做我想做的事情,但是我正在寻找一种不那么笨重的方法。
我正在尝试设计一个基于密钥的锁定工具:有点像普通的可重入锁,但不是使用lock()和unlock(),而是使用lock(key)和unlock(key),如果使用key.equals(key1),则没有人能够同时锁定我特别不喜欢在试图将锁放在map中时的while循环……import java.util.concurrent.ConcurrentMap;
import ja