Une instance de la classe PipedInputStream doit être connectée à un objet PipedOutputStream. Il fournit alors des octets de données qui sont écrits dans l'objet PipedOutputStream.

Typiquement, 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. La tentative d'utiliser les deux objets à partir d'un seul thread, n'est pas recommandée à cause de risques de blocage du thread. L'objet PipedInputStream contient une mémoire tampon découplant les opérations de lecture à partir d'opération d'écriture dans certaines limites.

Les champs
protected byte[] buffer
Ce champ représente la mémoire tampon circulaire dans lequel les données entrantes sont placées.
protected int in
Ce champ représente l'index de la position dans la mémoire tampon circulaire où le prochaîn octet de données sera stocké à partir de l'objet PipedOutputStream connecté.
protected int out
Ce champ représente l'index de la position dans la mémoire tampon circulaire où le prochaîn octet de données sera lu par l'objet PipedInputStream.
protected static int PIPE_SIZE
Ce champ représente la mémoire tampon d'entrée circulaire du conduit.

Les constructeurs
PipedInputStream()
crée un PipedInputStream qui n'est pas encore connecté.
PipedInputStream(PipedOutputStream src)
crée un PipedInputStream qui est connecté à l'objet PipedOutputStream passé en argument.

Les méthodes
int available()
retourne le nombre d'octets qui peuvent être lus à partir de l'objet PipedInputStream sans entraîner de blocage.
void close()
ferme l'objet PipedInputStream et libère toutes les ressources qui lui sont associées.
void connect(PipedOutputStream src)
provoque la connection de l'objet PipedInputStream à un objet PipedOutputStream passé en argument.
int read()
lit le prochain octet de données à partir de l'objet PipedInputStream.
int read(byte[] b, int off, int len)
lit une certaine quantité d'octets dans le flux et les renvoie dans le tableau passé en argument.
protected void receive(int b)
reçoit un octet de données.
Les méthodes héritées de la classe java.io.InputStream
mark, markSupported, read, reset, skip
Les méthodes héritées de la classe java.lang.Object
clone, equals, finalize, getClass, hashCode,
notify, notifyAll, toString, wait, wait, wait