381 |
|
} |
382 |
|
|
383 |
|
/** |
384 |
– |
* take blocks interruptibly when empty |
385 |
– |
*/ |
386 |
– |
public void testTakeFromEmpty() throws InterruptedException { |
387 |
– |
final LinkedBlockingQueue q = new LinkedBlockingQueue(2); |
388 |
– |
Thread t = new ThreadShouldThrow(InterruptedException.class) { |
389 |
– |
public void realRun() throws InterruptedException { |
390 |
– |
q.take(); |
391 |
– |
}}; |
392 |
– |
|
393 |
– |
t.start(); |
394 |
– |
Thread.sleep(SHORT_DELAY_MS); |
395 |
– |
t.interrupt(); |
396 |
– |
t.join(); |
397 |
– |
} |
398 |
– |
|
399 |
– |
/** |
384 |
|
* Take removes existing elements until empty, then blocks interruptibly |
385 |
|
*/ |
386 |
|
public void testBlockingTake() throws InterruptedException { |