A reentrant mutual exclusion with the same basic behavior and semantics as the implicit monitor lock accessed using {@code synchronized} methods and statements.
Serialization of this class behaves in the same way as built-in locks: a deserialized lock is in the unlocked state, regardless of its state when serialized.
This class exists just for the purposes of Java 1.4 compatibility; it is equivalent to the Java 1.5 ReentrantLock class. It probably doesn't perform as well as the "real" lock class, but Orchestra doesn't use it in any critical paths.
@since 1.1