org.jgroups.util
Class ReentrantLatch
java.lang.Object
org.jgroups.util.ReentrantLatch
public final class ReentrantLatch
extends java.lang.Object
Enables safely locking and unlocking a shared resource, without blocking the calling threads. Blocking is only done
on the 'passThrough' method.
- yaronr / Dmitry Gershkovich
void | lock() - Lock the latch.
|
void | passThrough() - Pass through only when the latch becomes unlocked.
|
void | unlock() - Unlock the latch.
|
ReentrantLatch
public ReentrantLatch()
Create a new unlocked latch.
ReentrantLatch
public ReentrantLatch(boolean locked)
Create a reentrant latch
locked
- is the latch to be created locked or not
lock
public void lock()
Lock the latch. If it is already locked, this method will have no side effects. This method will not block.
passThrough
public void passThrough()
throws InterruptedException
Pass through only when the latch becomes unlocked. If the latch is locked, wait until someone unlocks it. Does
not lock the latch.
unlock
public void unlock()
Unlock the latch. If it is already unlocked, this method will have no side effects. This method will not block.
Copyright B) 1998-2005 Bela Ban. All Rights Reserved.