public synchronized void signal() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } notify(); }
public synchronized void signalAll() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } notifyAll(); }
public synchronized void signal() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } notify(); }
public synchronized void signalAll() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } notifyAll(); }
protected boolean hasWaiters() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } return wq.hasNodes(); }
public void signalAll() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } for (;;) { WaitQueue.WaitNode w = wq.extract(); if (w == null) return; // no more to signal w.signal(sync); } }
protected Collection getWaitingThreads() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } return wq.getWaitingThreads(); }
protected Collection getWaitingThreads() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } return wq.getWaitingThreads(); }
protected int getWaitQueueLength() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } return wq.getLength(); }
public void signal() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } for (;;) { WaitQueue.WaitNode w = wq.extract(); if (w == null) return; // no one to signal if (w.signal(sync)) return; // notify if still waiting, else skip } }
public synchronized void signal() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } notify(); }
protected Collection getWaitingThreads() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } return wq.getWaitingThreads(); }
public synchronized void signalAll() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } notifyAll(); }
protected int getWaitQueueLength() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } return wq.getLength(); }
public void signal() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } for (;;) { WaitQueue.WaitNode w = wq.extract(); if (w == null) return; // no one to signal if (w.signal(sync)) return; // notify if still waiting, else skip } }
protected boolean hasWaiters() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } return wq.hasNodes(); }
protected int getWaitQueueLength() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } return wq.getLength(); }
protected boolean hasWaiters() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } return wq.hasNodes(); }
public void signal() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } for (;;) { WaitQueue.WaitNode w = wq.extract(); if (w == null) return; // no one to signal if (w.signal(sync)) return; // notify if still waiting, else skip } }
public void signalAll() { if (!lock.isHeldByCurrentThread()) { throw new IllegalMonitorStateException(); } for (;;) { WaitQueue.WaitNode w = wq.extract(); if (w == null) return; // no more to signal w.signal(sync); } }