readerwriter
Class FifoThreadSelector

java.lang.Object
  |
  +--readerwriter.FifoThreadSelector
All Implemented Interfaces:
ThreadSelector

public class FifoThreadSelector
extends java.lang.Object
implements ThreadSelector

La classe FifoThreadSelector implementa un semplicissimo selezionatore di Thread (interfaccia ThreadSelector) : un thread che viene messo in coda, viene risvegliato quando tutti quelli che erano arrivati prima di lui a mettersi in coda sono stati risvegliati. La coda e' FIFO (First In First Out), il primo ad essere arrivato e' anche il primo ad andarsene


Constructor Summary
FifoThreadSelector()
           
FifoThreadSelector(int fifoCapacity)
           
 
Method Summary
 void addThread(SemaphoredThread newThread, java.lang.Object priority)
          Inserisce un nuovo Thread in coda lista dei Thread in attesa; si preoccupa di metterlo in wait su di se stesso in attesa di essere risvegliato.
static void main(java.lang.String[] args)
           
 SemaphoredThread removeThread()
          Rimuove il Thread in testa alla lista dei Thread in attesa; si preoccupa di risvegliare il Thread dal suo stato di wait.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

FifoThreadSelector

public FifoThreadSelector()

FifoThreadSelector

public FifoThreadSelector(int fifoCapacity)
Method Detail

addThread

public void addThread(SemaphoredThread newThread,
                      java.lang.Object priority)
Inserisce un nuovo Thread in coda lista dei Thread in attesa; si preoccupa di metterlo in wait su di se stesso in attesa di essere risvegliato. Il metodo e' thread safe
Specified by:
addThread in interface ThreadSelector
Parameters:
newThread - Thread che viene posto in stato di wait e inserito in coda
priority - Non viene considerato

removeThread

public SemaphoredThread removeThread()
Rimuove il Thread in testa alla lista dei Thread in attesa; si preoccupa di risvegliare il Thread dal suo stato di wait. Il metodo e' thread safe
Specified by:
removeThread in interface ThreadSelector
Returns:
Thread Il thread che e' stato risvegliato

main

public static void main(java.lang.String[] args)