441 |
|
new ThreadPoolExecutor(1, 1, |
442 |
|
LONG_DELAY_MS, MILLISECONDS, |
443 |
|
new ArrayBlockingQueue<Runnable>(10)); |
444 |
< |
assertFalse(p.isTerminated()); |
445 |
< |
assertFalse(p.awaitTermination(Long.MIN_VALUE, NANOSECONDS)); |
446 |
< |
assertFalse(p.awaitTermination(Long.MIN_VALUE, MILLISECONDS)); |
447 |
< |
assertFalse(p.awaitTermination(-1L, NANOSECONDS)); |
448 |
< |
assertFalse(p.awaitTermination(-1L, MILLISECONDS)); |
449 |
< |
assertFalse(p.awaitTermination(0L, NANOSECONDS)); |
450 |
< |
assertFalse(p.awaitTermination(0L, MILLISECONDS)); |
451 |
< |
long timeoutNanos = 999999L; |
452 |
< |
long startTime = System.nanoTime(); |
453 |
< |
assertFalse(p.awaitTermination(timeoutNanos, NANOSECONDS)); |
454 |
< |
assertTrue(System.nanoTime() - startTime >= timeoutNanos); |
455 |
< |
assertFalse(p.isTerminated()); |
456 |
< |
startTime = System.nanoTime(); |
457 |
< |
long timeoutMillis = timeoutMillis(); |
458 |
< |
assertFalse(p.awaitTermination(timeoutMillis, MILLISECONDS)); |
459 |
< |
assertTrue(millisElapsedSince(startTime) >= timeoutMillis); |
460 |
< |
assertFalse(p.isTerminated()); |
461 |
< |
p.shutdown(); |
462 |
< |
assertTrue(p.awaitTermination(LONG_DELAY_MS, MILLISECONDS)); |
463 |
< |
assertTrue(p.isTerminated()); |
444 |
> |
try (PoolCleaner cleaner = cleaner(p)) { |
445 |
> |
assertFalse(p.isTerminated()); |
446 |
> |
assertFalse(p.awaitTermination(Long.MIN_VALUE, NANOSECONDS)); |
447 |
> |
assertFalse(p.awaitTermination(Long.MIN_VALUE, MILLISECONDS)); |
448 |
> |
assertFalse(p.awaitTermination(-1L, NANOSECONDS)); |
449 |
> |
assertFalse(p.awaitTermination(-1L, MILLISECONDS)); |
450 |
> |
assertFalse(p.awaitTermination(0L, NANOSECONDS)); |
451 |
> |
assertFalse(p.awaitTermination(0L, MILLISECONDS)); |
452 |
> |
long timeoutNanos = 999999L; |
453 |
> |
long startTime = System.nanoTime(); |
454 |
> |
assertFalse(p.awaitTermination(timeoutNanos, NANOSECONDS)); |
455 |
> |
assertTrue(System.nanoTime() - startTime >= timeoutNanos); |
456 |
> |
assertFalse(p.isTerminated()); |
457 |
> |
startTime = System.nanoTime(); |
458 |
> |
long timeoutMillis = timeoutMillis(); |
459 |
> |
assertFalse(p.awaitTermination(timeoutMillis, MILLISECONDS)); |
460 |
> |
assertTrue(millisElapsedSince(startTime) >= timeoutMillis); |
461 |
> |
assertFalse(p.isTerminated()); |
462 |
> |
try { p.shutdown(); } catch (SecurityException ok) { return; } |
463 |
> |
assertTrue(p.awaitTermination(LONG_DELAY_MS, MILLISECONDS)); |
464 |
> |
assertTrue(p.isTerminated()); |
465 |
> |
} |
466 |
|
} |
467 |
|
|
468 |
|
/** |