Class LockingVisitors.ReadWriteLockVisitor<O>
java.lang.Object
org.apache.commons.lang3.concurrent.locks.LockingVisitors.LockVisitor<O, ReadWriteLock>
org.apache.commons.lang3.concurrent.locks.LockingVisitors.ReadWriteLockVisitor<O>
- Type Parameters:
O- The type of the object to protect.
- Enclosing class:
LockingVisitors
public static class LockingVisitors.ReadWriteLockVisitor<O>
extends LockingVisitors.LockVisitor<O, ReadWriteLock>
Wraps a
ReadWriteLock and object to protect. To access the object, use the methods LockingVisitors.LockVisitor.acceptReadLocked(FailableConsumer),
LockingVisitors.LockVisitor.acceptWriteLocked(FailableConsumer), LockingVisitors.LockVisitor.applyReadLocked(FailableFunction), and LockingVisitors.LockVisitor.applyWriteLocked(FailableFunction). The visitor
holds the lock while the consumer or function is called.- Since:
- 3.11
- See Also:
-
Nested Class Summary
Nested ClassesNested classes/interfaces inherited from class LockingVisitors.LockVisitor
LockingVisitors.LockVisitor.LVBuilder<O,L, B> -
Constructor Summary
ConstructorsModifierConstructorDescriptionprotectedReadWriteLockVisitor(O object, ReadWriteLock readWriteLock) Creates a new instance with the given object and lock. -
Method Summary
Modifier and TypeMethodDescriptionstatic <O> LockingVisitors.ReadWriteLockVisitor.Builder<O> builder()Creates a new builder.Methods inherited from class LockingVisitors.LockVisitor
acceptReadLocked, acceptWriteLocked, applyReadLocked, applyWriteLocked, getLock, getObject, lockAcceptUnlock, lockApplyUnlock
-
Constructor Details
-
ReadWriteLockVisitor
Creates a new instance with the given object and lock.- Parameters:
object- The object to protect. The caller is supposed to drop all references to the locked object.readWriteLock- the lock to use.- See Also:
-
-
Method Details
-
builder
Creates a new builder.- Type Parameters:
O- the wrapped object type.- Returns:
- a new builder.
- Since:
- 3.18.0
-