Lines Matching refs:phaser

51     private static void checkTerminated(final Phaser phaser) {
52 check(phaser.isTerminated());
53 int unarriverParties = phaser.getUnarrivedParties();
54 int registeredParties = phaser.getRegisteredParties();
55 int phase = phaser.getPhase();
57 equal(phase, phaser.arrive());
58 equal(phase, phaser.arriveAndDeregister());
59 equal(phase, phaser.arriveAndAwaitAdvance());
60 equal(phase, phaser.bulkRegister(10));
61 equal(phase, phaser.register());
63 equal(phase, phaser.awaitAdvanceInterruptibly(0));
64 equal(phase, phaser.awaitAdvanceInterruptibly(0, 10, SECONDS));
68 equal(phaser.getUnarrivedParties(), unarriverParties);
69 equal(phaser.getRegisteredParties(), registeredParties);
139 private static Arriver arriver(final Phaser phaser) {
143 try { phase(phaser.arrive()); }
149 private static Awaiter awaiter(final Phaser phaser) {
155 phase(phaser.awaitAdvance(phaser.arrive()));
157 phase(phaser.arriveAndAwaitAdvance());
161 private static Awaiter awaiter(final Phaser phaser,
169 phase(phaser.awaitAdvanceInterruptibly(phaser.arrive()));
171 phase(phaser.awaitAdvanceInterruptibly(phaser.arrive(),
178 private static Iterator<Arriver> arriverIterator(final Phaser phaser) {
185 return arriver(phaser);
187 return awaiter(phaser);
189 return awaiter(phaser, -1, SECONDS);
191 return awaiter(phaser, 30, SECONDS); }}
196 private static Iterator<Awaiter> awaiterIterator(final Phaser phaser) {
203 return awaiter(phaser);
205 return awaiter(phaser, -1, SECONDS);
207 return awaiter(phaser, 30, SECONDS); }}
219 Phaser phaser = new Phaser(3);
220 equal(phaser.getRegisteredParties(), 3);
221 equal(phaser.getArrivedParties(), 0);
222 equal(phaser.getPhase(), 0);
223 check(phaser.getRoot().equals(phaser));
224 equal(phaser.getParent(), null);
225 check(!phaser.isTerminated());
227 Iterator<Arriver> arrivers = arriverIterator(phaser);
230 equal(phaser.getPhase(), phase++);
234 phaser.arriveAndAwaitAdvance();
239 check(!phaser.isTerminated());
240 equal(phaser.getRegisteredParties(), 3);
241 equal(phaser.getArrivedParties(), 0);
249 Phaser phaser = new Phaser(3);
250 Iterator<Arriver> arrivers = arriverIterator(phaser);
251 int phase = phaser.getPhase();
253 check(phaser.getPhase() == phase);
254 Awaiter a1 = awaiter(phaser, 30, SECONDS); a1.start();
261 phaser.arriveAndAwaitAdvance();
265 check(!phaser.isTerminated());
266 equal(phaser.getRegisteredParties(), 3);
267 equal(phaser.getArrivedParties(), 0);
277 Phaser phaser = new Phaser(3);
278 Iterator<Awaiter> awaiters = awaiterIterator(phaser);
282 while (phaser.getArrivedParties() < 2) Thread.yield();
283 equal(0, phaser.getPhase());
284 phaser.forceTermination();
289 int arrivedParties = phaser.getArrivedParties();
290 checkTerminated(phaser);
291 equal(phaser.getArrivedParties(), arrivedParties);
296 // Adds new unarrived parties to this phaser
299 Phaser phaser = new Phaser(1);
300 Iterator<Arriver> arrivers = arriverIterator(phaser);
302 int phase = phaser.getPhase();
305 check(phaser.getPhase() == phase);
307 phaser.register(); phaser.register(); phaser.register();
315 phaser.arriveAndAwaitAdvance();
321 equal(phaser.getRegisteredParties(), 1 + (3*i));
322 equal(phaser.getArrivedParties(), 0);
333 Phaser phaser = new Phaser(3);
334 Iterator<Arriver> arrivers = arriverIterator(phaser);
337 Awaiter a1 = awaiter(phaser, timeout, SECONDS); a1.start();
342 phaser.arrive();
345 check(!phaser.isTerminated());
356 Phaser phaser = new Phaser(3) {
369 kludge[0] = phaser;
370 equal(phaser.getRegisteredParties(), 3);
371 Iterator<Awaiter> awaiters = awaiterIterator(phaser);
376 while (phaser.getArrivedParties() < 2) Thread.yield();
377 phaser.arrive();
384 check(!phaser.isTerminated());
385 equal(phaser.getRegisteredParties(), 3);
386 equal(phaser.getArrivedParties(), 0);
387 equal(phaser.getUnarrivedParties(), 3);
388 equal(phaser.getPhase(), count.get());
390 checkTerminated(phaser);