--- a/jdk/src/share/classes/java/util/concurrent/locks/ReentrantLock.java Fri Oct 26 11:21:02 2012 +0100
+++ b/jdk/src/share/classes/java/util/concurrent/locks/ReentrantLock.java Fri Oct 26 21:34:24 2012 +0100
@@ -34,9 +34,8 @@
*/
package java.util.concurrent.locks;
-import java.util.*;
-import java.util.concurrent.*;
-import java.util.concurrent.atomic.*;
+import java.util.concurrent.TimeUnit;
+import java.util.Collection;
/**
* A reentrant mutual exclusion {@link Lock} with the same basic
@@ -73,7 +72,7 @@
* follow a call to {@code lock} with a {@code try} block, most
* typically in a before/after construction such as:
*
- * <pre>
+ * <pre> {@code
* class X {
* private final ReentrantLock lock = new ReentrantLock();
* // ...
@@ -86,8 +85,7 @@
* lock.unlock()
* }
* }
- * }
- * </pre>
+ * }}</pre>
*
* <p>In addition to implementing the {@link Lock} interface, this
* class defines methods {@code isLocked} and
@@ -187,8 +185,7 @@
}
/**
- * Reconstitutes this lock instance from a stream.
- * @param s the stream
+ * Reconstitutes the instance from a stream (that is, deserializes it).
*/
private void readObject(java.io.ObjectInputStream s)
throws java.io.IOException, ClassNotFoundException {
@@ -383,8 +380,11 @@
* method. If you want a timed {@code tryLock} that does permit barging on
* a fair lock then combine the timed and un-timed forms together:
*
- * <pre>if (lock.tryLock() || lock.tryLock(timeout, unit) ) { ... }
- * </pre>
+ * <pre> {@code
+ * if (lock.tryLock() ||
+ * lock.tryLock(timeout, unit)) {
+ * ...
+ * }}</pre>
*
* <p>If the current thread
* already holds this lock then the hold count is incremented by one and
@@ -438,7 +438,6 @@
* the lock could be acquired
* @throws InterruptedException if the current thread is interrupted
* @throws NullPointerException if the time unit is null
- *
*/
public boolean tryLock(long timeout, TimeUnit unit)
throws InterruptedException {
@@ -514,7 +513,7 @@
* not be entered with the lock already held then we can assert that
* fact:
*
- * <pre>
+ * <pre> {@code
* class X {
* ReentrantLock lock = new ReentrantLock();
* // ...
@@ -527,8 +526,7 @@
* lock.unlock();
* }
* }
- * }
- * </pre>
+ * }}</pre>
*
* @return the number of holds on this lock by the current thread,
* or zero if this lock is not held by the current thread
@@ -545,7 +543,7 @@
* testing. For example, a method that should only be called while
* a lock is held can assert that this is the case:
*
- * <pre>
+ * <pre> {@code
* class X {
* ReentrantLock lock = new ReentrantLock();
* // ...
@@ -554,13 +552,12 @@
* assert lock.isHeldByCurrentThread();
* // ... method body
* }
- * }
- * </pre>
+ * }}</pre>
*
* <p>It can also be used to ensure that a reentrant lock is used
* in a non-reentrant manner, for example:
*
- * <pre>
+ * <pre> {@code
* class X {
* ReentrantLock lock = new ReentrantLock();
* // ...
@@ -574,8 +571,7 @@
* lock.unlock();
* }
* }
- * }
- * </pre>
+ * }}</pre>
*
* @return {@code true} if current thread holds this lock and
* {@code false} otherwise
@@ -636,7 +632,6 @@
return sync.hasQueuedThreads();
}
-
/**
* Queries whether the given thread is waiting to acquire this
* lock. Note that because cancellations may occur at any time, a
@@ -652,7 +647,6 @@
return sync.isQueued(thread);
}
-
/**
* Returns an estimate of the number of threads waiting to
* acquire this lock. The value is only an estimate because the number of