org.infinispan.util.concurrent.locks.containers.AbstractPerEntryLockContainer Maven / Gradle / Ivy
package org.infinispan.util.concurrent.locks.containers;
import org.infinispan.commons.equivalence.AnyEquivalence;
import org.infinispan.commons.equivalence.Equivalence;
import org.infinispan.commons.util.ByRef;
import org.infinispan.commons.util.Util;
import org.infinispan.commons.util.concurrent.jdk8backported.EquivalentConcurrentHashMapV8;
import org.infinispan.util.concurrent.locks.RefCountingLock;
import org.infinispan.util.logging.Log;
import java.util.concurrent.TimeUnit;
import static org.infinispan.commons.util.Util.toStr;
/**
* An abstract lock container that creates and maintains a new lock per entry
*
* @author Manik Surtani
* @since 4.0
*/
public abstract class AbstractPerEntryLockContainer extends AbstractLockContainer {
// We specifically need a CHMV8, to be able to use methods like computeIfAbsent, computeIfPresent and compute
protected final EquivalentConcurrentHashMapV8
© 2015 - 2025 Weber Informatics LLC | Privacy Policy