Interpreter.Utils
Class OutputThread

java.lang.Object
  |
  +--java.lang.Thread
        |
        +--Interpreter.Utils.OutputThread

public class OutputThread
extends java.lang.Thread

Thread che legge da uno stream di input per scrivere su una TextArea.


Field Summary
 boolean stop
          Se si setta questa variabile a true si indica al thread di fermarsi.
 
Fields inherited from class java.lang.Thread
MAX_PRIORITY, MIN_PRIORITY, NORM_PRIORITY
 
Constructor Summary
OutputThread(InputBuffer In, javax.swing.JTextArea Area)
          Costruisce un nuovo OutputThread.
 
Method Summary
 void run()
          Ciclo di esecuzione.
 
Methods inherited from class java.lang.Thread
activeCount, checkAccess, countStackFrames, currentThread, destroy, dumpStack, enumerate, getContextClassLoader, getName, getPriority, getThreadGroup, interrupt, interrupted, isAlive, isDaemon, isInterrupted, join, join, join, resume, setContextClassLoader, setDaemon, setName, setPriority, sleep, sleep, start, stop, stop, suspend, toString, yield
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

stop

public boolean stop
Se si setta questa variabile a true si indica al thread di fermarsi.
Per essere sicuri che esca dal ciclo principale bisogna inviargli alcuni byte sullo stream in modo che si sblocchi.
Non viene utilizzato il metodo stop perché unsafe.
Constructor Detail

OutputThread

public OutputThread(InputBuffer In,
                    javax.swing.JTextArea Area)
Costruisce un nuovo OutputThread.
Parameters:
In - buffer da cui viene letto l'input.
Area - l'area di testo su cui viene scritto. Per evitare conflitti viene sempre utilizzata l'area in modo esclusivo tramite un synchronized(area).
Method Detail

run

public void run()
Ciclo di esecuzione.
Il thread si pone in attesa sullo stream. Appena riceve caratteri li appende all'area di testo.
Overrides:
run in class java.lang.Thread


Codice realizzato da Francesco Geri & Marco Tamanti