372 |
|
* Take removes existing elements until empty, then blocks interruptibly |
373 |
|
*/ |
374 |
|
public void testBlockingTake() throws InterruptedException { |
375 |
< |
Thread t = new Thread(new CheckedInterruptedRunnable() { |
375 |
> |
final PriorityBlockingQueue q = populatedQueue(SIZE); |
376 |
> |
Thread t = new Thread(new CheckedRunnable() { |
377 |
|
public void realRun() throws InterruptedException { |
377 |
– |
PriorityBlockingQueue q = populatedQueue(SIZE); |
378 |
|
for (int i = 0; i < SIZE; ++i) { |
379 |
< |
threadAssertEquals(i, ((Integer)q.take()).intValue()); |
379 |
> |
assertEquals(i, q.take()); |
380 |
|
} |
381 |
< |
q.take(); |
381 |
> |
try { |
382 |
> |
q.take(); |
383 |
> |
shouldThrow(); |
384 |
> |
} catch (InterruptedException success) {} |
385 |
|
}}); |
386 |
|
|
387 |
|
t.start(); |