code: @Override
  	public int drainTo(Collection<? super E> c) {
  		int i = queue.drainTo(c);
  		if (i > 0){
  			signalSizeReduced();
  		}
  		return i;
  	}
docs: /* (non-Javadoc)
  @see java.util.concurrent.BlockingQueue#drainTo(java.util.Collection)