public Command checkoutCommand() throws InterruptedException {
  Command command=pool.poll();
  if (command == null) {
    command=new Command(gondola,this,cmember);
  }
  return command;
}

public Command checkoutCommand ( ) throws InterruptedException { Command command = pool . poll ( ) ; if ( command == null ) { command = new Command ( gondola , this , cmember ) ; } return command ; }
retrieves a command object from the command pool . blocks until there are commands in the pool .
