Serial Communication - Thread / SerialPortEventListener:

boarter

Mitglied
Hallo ich habe eine Frage zu Sun's Beispielcode für die Kommunikation mit der Seriellen Schnittstelle:
http://java.sun.com/developer/releases/javacomm/SimpleRead.java

Dort wird ein Thread aufgemacht. Die Run Methode beinhaltet nur ein 20sec. Schlaf vom Thread.

Kann mir jemand sagen warum das so ist?:
PHP:
   public void run() {
    try {
        Thread.sleep(20000);
    } catch (InterruptedException e) {}
    }
die eigentlichen Daten werden von einem Listener abgegriffen:
PHP:
     public void serialEvent(SerialPortEvent event) {
    switch (event.getEventType()) {

    case SerialPortEvent.BI:

    case SerialPortEvent.OE:

    case SerialPortEvent.FE:

    case SerialPortEvent.PE:

    case SerialPortEvent.CD:

    case SerialPortEvent.CTS:

    case SerialPortEvent.DSR:

    case SerialPortEvent.RI:

    case SerialPortEvent.OUTPUT_BUFFER_EMPTY:
        break;

    case SerialPortEvent.DATA_AVAILABLE:
        byte[] readBuffer = new byte[20];

        try {
        while (inputStream.available() > 0) {
            int numBytes = inputStream.read(readBuffer);
        } 

        System.out.print(new String(readBuffer));
        } catch (IOException e) {}

        break;
    }
    }
Ich sehe da keine verbindung zwischen dem Thread und dem SerialEvent. Kann mir da jemand weiterhelfen? besten dank, boarter
 
Zurück