Hallo aller Seits,
Ich versuche gerade ein Programm zu verstehen, aber habe immer noch lücken
Ich verstehe nicht dieser Methode wie es funktioniert?
Es ist ein Elevator der Task bekommt und die nach der Reihen bearbeitet.... Es ist als Thread implementiert..
Hier ist die Methode
2 einer Methode die Ein Monitor setzt, es wird mit Synchronized erstellt
Ich verstehe nicht wann man es setzen soll und warum?
Was ist this?
Danke im Vorraus
Ich versuche gerade ein Programm zu verstehen, aber habe immer noch lücken
Ich verstehe nicht dieser Methode wie es funktioniert?
Es ist ein Elevator der Task bekommt und die nach der Reihen bearbeitet.... Es ist als Thread implementiert..
Hier ist die Methode
Java:
protected void processTask(ElevatorTask task) {
try {
if(currentFloor!=task.getStartFloor()) {
Thread.sleep(Math.abs(currentFloor-task.getStartFloor())*1000);
}
System.out.println(name+" arrived at startFloor "+task.getStartFloor());
Thread.sleep(Math.abs(task.getDestFloor()-task.getStartFloor())*1000);
System.out.println(name+" arrived at destFloor "+task.getDestFloor());
} catch(InterruptedException e) {}
}
public void run() {
while(true) {
if(!controller.tasks.isEmpty()) {
processTask(controller.getNextTask());
}
}
2 einer Methode die Ein Monitor setzt, es wird mit Synchronized erstellt
Ich verstehe nicht wann man es setzen soll und warum?
Was ist this?
Java:
protected void addTask(ElevatorTask task) {
synchronized(this) {
tasks.addLast(task);
}
}