Class SingleLock

  • All Implemented Interfaces:
    java.lang.AutoCloseable, ResourceLock

    class SingleLock
    extends java.lang.Object
    implements ResourceLock
    Since:
    1.3
    • Field Detail

      • lock

        private final java.util.concurrent.locks.Lock lock
    • Constructor Detail

      • SingleLock

        SingleLock​(ExclusiveResource resource,
                   java.util.concurrent.locks.Lock lock)
    • Method Detail

      • getLock

        java.util.concurrent.locks.Lock getLock()
      • acquire

        public ResourceLock acquire()
                             throws java.lang.InterruptedException
        Description copied from interface: ResourceLock
        Acquire this resource lock, potentially blocking.
        Specified by:
        acquire in interface ResourceLock
        Returns:
        this lock so it can easily be used in a try-with-resources statement.
        Throws:
        java.lang.InterruptedException - if the calling thread is interrupted while waiting to acquire this lock
      • release

        public void release()
        Description copied from interface: ResourceLock
        Release this resource lock.
        Specified by:
        release in interface ResourceLock
      • isExclusive

        public boolean isExclusive()
        Description copied from interface: ResourceLock
        {@return whether this lock requires exclusiveness}
        Specified by:
        isExclusive in interface ResourceLock
      • toString

        public java.lang.String toString()
        Overrides:
        toString in class java.lang.Object