21 lines
696 B
Markdown
21 lines
696 B
Markdown
up:: [[unix tubes]], [[C tubes]]
|
|
title::
|
|
#s/informatique/unix
|
|
|
|
---
|
|
|
|
Cas d'un processus qui essaie de lire `N` octets à la sortie d'un tube
|
|
1. le tube n'est pas vide et contient $n$ onctents
|
|
1. `min(n, N)` octets sont lus
|
|
2. la primitive renvoie le nombre réel d'octets lus
|
|
2. Le tube est vide
|
|
1. le nombre d'écrivains est nul (fin de fichier est atteinte)
|
|
- aucun octet n'est lu
|
|
- la primitive renvoie 0
|
|
- le nombre d'écrivains n'est pas nul
|
|
- si la lecture est bloquante, le processus est mis en sommeil jusqu'à ce que le tube ne soit plus vide
|
|
- si la lecture n'est pas bloquante, la primitive renvoie -1 et `errno = EAGAIN`
|
|
|
|
|
|
|