ViewVC Help
View File | Revision Log | Show Annotations | Download File | Root Listing
root/jsr166/jsr166/src/test/tck/CyclicBarrierTest.java
(Generate patch)

Comparing jsr166/src/test/tck/CyclicBarrierTest.java (file contents):
Revision 1.32 by jsr166, Tue Aug 13 00:54:51 2019 UTC vs.
Revision 1.33 by jsr166, Mon Sep 9 00:03:07 2019 UTC

# Line 296 | Line 296 | public class CyclicBarrierTest extends J
296      }
297  
298      /**
299     * All threads block while a barrier is broken.
300     */
301    public void testReset_Leakage() throws InterruptedException {
302        final CyclicBarrier c = new CyclicBarrier(2);
303        final AtomicBoolean done = new AtomicBoolean();
304        Thread t = newStartedThread(new CheckedRunnable() {
305            public void realRun() {
306                while (!done.get()) {
307                    try {
308                        while (c.isBroken())
309                            c.reset();
310
311                        c.await();
312                        shouldThrow();
313                    }
314                    catch (BrokenBarrierException | InterruptedException ok) {}
315                }}});
316
317        for (int i = 0; i < 4; i++) {
318            delay(timeoutMillis());
319            t.interrupt();
320        }
321        done.set(true);
322        t.interrupt();
323        awaitTermination(t);
324    }
325
326    /**
299       * Reset of a non-broken barrier does not break barrier
300       */
301      public void testResetWithoutBreakage() throws Exception {

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines