code: private void setHead(Node node) {
          head = node;
          node.thread = null;
          node.prev = null;
      }
docs: Sets head of queue to be node, thus dequeuing. Called only by
  acquire methods.  Also nulls out unused fields for sake of GC
  and to suppress unnecessary signals and traversals.
  
  @param node the node