350 |
|
public void realRun() throws InterruptedException { |
351 |
|
q.put(new Object()); |
352 |
|
q.put(new Object()); |
353 |
+ |
|
354 |
|
long startTime = System.nanoTime(); |
355 |
|
assertFalse(q.offer(new Object(), timeoutMillis(), MILLISECONDS)); |
356 |
|
assertTrue(millisElapsedSince(startTime) >= timeoutMillis()); |
357 |
+ |
|
358 |
+ |
Thread.currentThread().interrupt(); |
359 |
+ |
try { |
360 |
+ |
q.offer(new Object(), 2 * LONG_DELAY_MS, MILLISECONDS); |
361 |
+ |
shouldThrow(); |
362 |
+ |
} catch (InterruptedException success) {} |
363 |
+ |
assertFalse(Thread.interrupted()); |
364 |
+ |
|
365 |
|
pleaseInterrupt.countDown(); |
366 |
|
try { |
367 |
|
q.offer(new Object(), 2 * LONG_DELAY_MS, MILLISECONDS); |