--- jsr166/src/test/tck/ThreadPoolExecutorSubclassTest.java 2015/10/04 01:23:41 1.53 +++ jsr166/src/test/tck/ThreadPoolExecutorSubclassTest.java 2015/10/04 01:27:32 1.54 @@ -325,10 +325,10 @@ public class ThreadPoolExecutorSubclassT new CustomTPE(2, 2, LONG_DELAY_MS, MILLISECONDS, new ArrayBlockingQueue(10)); - final CountDownLatch threadStarted = new CountDownLatch(1); - final CountDownLatch threadProceed = new CountDownLatch(1); - final CountDownLatch threadDone = new CountDownLatch(1); - try { + try (PoolCleaner cleaner = cleaner(p)) { + final CountDownLatch threadStarted = new CountDownLatch(1); + final CountDownLatch threadProceed = new CountDownLatch(1); + final CountDownLatch threadDone = new CountDownLatch(1); assertEquals(0, p.getCompletedTaskCount()); p.execute(new CheckedRunnable() { public void realRun() throws InterruptedException { @@ -347,8 +347,6 @@ public class ThreadPoolExecutorSubclassT fail("timed out"); Thread.yield(); } - } finally { - joinPool(p); } }