457458459460461462463464465466467
manager.releaseAll(owner1); synchronized (restart) { try { synchronized (restart) { restart.meet(); restart.reset(); } } catch (InterruptedException ie) { } } }
541542543544545546547548549550551
first = owner2; } manager.releaseAll(owner2); synchronized (restart) { restart.meet(); restart.reset(); } } catch (InterruptedException ie) { } } }, "Thread #1");
571572573574575576577578579580581
first = owner3; } manager.releaseAll(owner3); synchronized (restart) { restart.meet(); restart.reset(); } } catch (InterruptedException ie) { } } }, "Thread #2");
593594595596597598599600601602603
synchronized (manager.getLock(res1)) { manager.releaseAll(owner1); } synchronized (restart) { restart.meet(); restart.reset(); } assertEquals(first, owner2); first = null; cb.reset();
661662663664665666667668669670671
GenericLock.COMPATIBILITY_REENTRANT, true, TIMEOUT); } lock.release(owner2); synchronized (restart) { restart.meet(); restart.reset(); } } catch (InterruptedException ie) { } } }, "Thread #1");
682683684685686687688689690691692
GenericLock.COMPATIBILITY_REENTRANT, true, TIMEOUT); } lock.release(owner3); synchronized (restart) { restart.meet(); restart.reset(); } } catch (InterruptedException ie) { } } }, "Thread #2");
700701702703704705706707708709710
synchronized (lock) { lock.release(owner1); } synchronized (restart) { restart.meet(); restart.reset(); } cb.reset(); }
736737738739740741742743744745746
manager.lock(owner2, res1, 1, true); cb.signalTurn(3); manager.releaseAll(owner2); synchronized (restart) { restart.meet(); restart.reset(); } } catch (InterruptedException ie) { } } }, "Thread #1");
768769770771772773774775776777778
} assertFalse(failed); manager.releaseAll(owner1); synchronized (restart) { restart.meet(); restart.reset(); } cb.reset(); }
811812813814815816817818819820821
public void run() { try { try { synchronized (start) { start.meet(); start.reset(); } manager.readLock(owner1, res1); manager.readLock(owner1, res2); manager.upgradeLock(owner1, res3); manager.writeLock(owner1, res3);