Пример #1
0
  /* (non-Javadoc)
   * @see java.lang.Runnable#run()
   */
  public void run() {

    //		log.debug("running");

    setRunning(true);

    while (true) {

      ResourceRequest request = null;
      boolean reserved = false;

      if (queue.isEmpty()) {
        setRunning(false);
        //				log.debug("finished");
        return;
      }

      request = (ResourceRequest) queue.firstElement();

      reserved = manager.requestResources(request);
      if (reserved) {
        queue.remove(request);
        notifyResourceWaiter(request);
        log.info("grantResources: " + request.getRrId());
      } else {
        waitForResources();
      }
    }
  }