précédent | suivant | table des matières
Une instance de la classe PipedInputStream doit être connectée à un objet PipedOutputStream.
Les données sont lues à partir d'un objet PipedInputStream par un thread et les données sont écrites dans l'objet PipedOutputStream correspondant par un autre thread. On parle de pipe.
1 Constructeurs :
PipedInputStream () |
Crée un PipedInputStream non connecté à un PipedOutputStream. |
PipedInputStream (PipedOutputStream pos) |
Crée un PipedInputStream connecté à pos. |
2 Les méthodes
Les méthodes sont les méthodes héritées de InputStream plus la méthode connect :
void connect (PipedOutputStream pos) |
Connecte le PipedInputStream à pos. Lève une IOException si le PipedInputStream est déjà connecté. |
3 Exemple :
public class Sortie extends Thread { PipedOutputStream sortie; DataOutputStream s; public Sortie(PipedOutputStream sortie) {< super(); this.sortie = sortie; s = new DataOutputStream(sortie); } public void run(){ try { for( int k = 0; k<20; ++k){ int i = (int)(Math.random()*100); s.writeInt(i); System.out.println(">>> "+i); sleep(200); } s.close(); }catch (IOException e) { e.printStackTrace(); } catch (InterruptedException e) { e.printStackTrace(); } } } |
public class Entree extends Thread { PipedInputStream entree; DataInputStream d; public Entree(PipedInputStream entree) { super(); this.entree = entree; d = new DataInputStream(entree); } public void run(){ try { while(true){ int i = d.readInt(); System.out.println(" "+i+" >>>"); } } catch (EOFException e) { System.out.println("FIN des entrées !"); }catch (IOException e) { e.printStackTrace(); } } } |
|
|
![]() |
![]() |