if (waker != null) queueLock.notifyAll(); waker = null;
  public void stop()  {    running = false;    if (waker != null)      waker.interrupt();    synchronized (queueLock)      {        queue = 0;      }  }