Universität Paderborn - Home Universität Paderborn
Die Universität der Informationsgesellschaft

Parallel Programming WS 2014/2015 - File LicenseClient.java

import java.util.Random;

public class LicenseClient extends Thread {
   private Channel clientReply;
   private Channel serverChan;
   private String id;
   private boolean running = true;

   public LicenseClient(Channel serv, String name) {
      serverChan = serv;
      clientReply = new Channel();
      id = name;
   }

   public void stopIt() {
      running = false;
   }

   private void sleep() {
         try {
               Thread.sleep((int) (Math.random() * 1000) + 1);
         }
         catch (InterruptedException e) {}
   }

   public void run() { // create 2 reusable message instances:
      Message reqMsg = new Message(LicenseServer.REQUEST, id, clientReply);
      Message relMsg = new Message(LicenseServer.RELEASE, id,  clientReply);

      while (running) {
            sleep();
            serverChan.send(reqMsg);
            clientReply.receive();
            sleep();
            serverChan.send(relMsg);
            clientReply.receive();
            sleep();
      }
   }
}

Generiert mit Camelot | Probleme mit Camelot? | Geändert am: 19.01.2015