alpiv.trucks
Class BlockSupport

java.lang.Object
  |
  +--alpiv.trucks.BlockSupport
Direct Known Subclasses:
Road

public class BlockSupport
extends java.lang.Object

Erlaubt das Belegen eines Objekts durch einen Thread. Es kann zu jeder Zeit nur ein Thread das Objekt belegen.


Constructor Summary
BlockSupport()
           
 
Method Summary
 void block()
          Belegt das Objekt.
 java.lang.Thread blocking()
          Liefert den Thread, der gerade das Objekt belegt hat, oder null.
 void unblock()
          Gibt das Objekt wieder frei.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BlockSupport

public BlockSupport()
Method Detail

blocking

public java.lang.Thread blocking()
Liefert den Thread, der gerade das Objekt belegt hat, oder null. Achtung, dies sollte nur zu Diagnosezwecken verwendet werden!

Returns:
den belegenden Thread oder null

block

public void block()
           throws java.lang.InterruptedException
Belegt das Objekt. Ist das Objekt bereits belegt, kehrt diese Methode erst zurück, wenn es wieder freigegeben wird.

Throws:
java.lang.InterruptedException - ein wartender Thread wurde unterbrochen

unblock

public void unblock()
Gibt das Objekt wieder frei. Warten andere Threads auf die Freigabe, so wird nichtdeterministisch einer davon ausgewählt und belegt als nächster das Objekt.