Souběh při fork()

Martin `MJ' Mares mj na ucw.cz
Pátek Červenec 25 22:42:43 CEST 2008


Zdravím!

> Chová se to takto (řekněme, že proces zapsal do roury 500 bytů):
> 
> if (FD_ISSET(...)){
>     char s[1024];
>     ret=read(fd, s, 1024);
>     // ret je 500
>     ret=read(fd, s, 1);
>     // ret je -1, errno je EAGAIN
> }
> 
> Co je přesně EOF při read() ?

Funkce read() na konci souboru (čili v tomto případě po uzavření druhého
konce roury) vrátí nulu.

Pokud ji nedostáváte, není to tím, že rodičovský proces druhý konec
roury zapomene zavřít?

				Have a nice fortnight
-- 
Martin `MJ' Mares                          <mj na ucw.cz>   http://mj.ucw.cz/
Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth
AES stands for "Ain't Encryption to Schneier".



Další informace o konferenci Linux