protected synchronized Object extract(){
  Object x=null;
  LinkedNode first=head_.next;
  if (first != null) {
    x=first.value;
    first.value=null;
    head_=first;
    count_--;
  }
  return x;
}

protected synchronized Object extract ( ) { Object x = null ; LinkedNode first = head_ . next ; if ( first != null ) { x = first . value ; first . value = null ; head_ = first ; count_ -- ; } return x ; }
main mechanics for take / poll
