Package org.apache.xmlbeans.impl.common
Class Mutex
- java.lang.Object
-
- org.apache.xmlbeans.impl.common.Mutex
-
public class Mutex extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Mutex()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
acquire()
Acquire the mutex.void
release()
Release the mutex.boolean
tryToAcquire()
Attempts to acquire the mutex.
-
-
-
Method Detail
-
acquire
public void acquire() throws java.lang.InterruptedException
Acquire the mutex. The mutex can be acquired multiple times by the same thread, provided that it is released as many times as it is acquired. The calling thread blocks until it has acquired the mutex. (There is no timeout).- Throws:
java.lang.InterruptedException
-
tryToAcquire
public boolean tryToAcquire()
Attempts to acquire the mutex. Returns false (and does not block) if it can't get it.
-
release
public void release()
Release the mutex. The mutex has to be released as many times as it was acquired to actually unlock the resource. The mutex must be released by the thread that acquired it- Throws:
java.lang.IllegalStateException
- (a RuntimeException) if a thread other than the current owner tries to release the mutex.
-
-