--- a/test/jdk/java/util/concurrent/BlockingQueue/OfferDrainToLoops.java Sat Sep 14 11:26:26 2019 -0700
+++ b/test/jdk/java/util/concurrent/BlockingQueue/OfferDrainToLoops.java Sat Sep 14 11:26:26 2019 -0700
@@ -34,6 +34,7 @@
/*
* @test
* @bug 6805775 6815766
+ * @library /test/lib
* @run main OfferDrainToLoops 100
* @summary Test concurrent offer vs. drainTo
*/
@@ -47,10 +48,12 @@
import java.util.concurrent.LinkedBlockingQueue;
import java.util.concurrent.LinkedTransferQueue;
import java.util.concurrent.atomic.AtomicLong;
+import jdk.test.lib.Utils;
@SuppressWarnings({"unchecked", "rawtypes", "deprecation"})
public class OfferDrainToLoops {
- final long testDurationMillisDefault = 10L * 1000L;
+ static final long LONG_DELAY_MS = Utils.adjustTimeout(10_000);
+ final long testDurationMillisDefault = 10_000L;
final long testDurationMillis;
OfferDrainToLoops(String[] args) {
@@ -76,7 +79,6 @@
System.out.println(q.getClass().getSimpleName());
final long testDurationNanos = testDurationMillis * 1000L * 1000L;
final long quittingTimeNanos = System.nanoTime() + testDurationNanos;
- final long timeoutMillis = 10L * 1000L;
final SplittableRandom rnd = new SplittableRandom();
// Poor man's bounded buffer.
@@ -155,13 +157,13 @@
}}};
for (Thread thread : new Thread[] { offerer, drainer, scanner }) {
- thread.join(timeoutMillis + testDurationMillis);
+ thread.join(LONG_DELAY_MS + testDurationMillis);
if (thread.isAlive()) {
System.err.printf("Hung thread: %s%n", thread.getName());
failed++;
for (StackTraceElement e : thread.getStackTrace())
System.err.println(e);
- thread.join(timeoutMillis);
+ thread.join(LONG_DELAY_MS);
}
}
}