Hi SUBREDU!

On Wed, 05 Dec 2001, SUBREDU Manuel wrote:

> 
> On Tue, 4 Dec 2001, Bogdan Marinca wrote:
> 
> ->>
> ->>Salut.
> ->>A mai lucrat cineva cu pipe cu nume (fifo) in linux?
> ->>Cam care ar fi procedura de citire/scriere?
> ->>
> ->>Eu am un daemon care citeste din fifo un nr fix de bytes
> ->>(o structura) iar apoi face fork repede, fiul prelucreaza 
> ->>structura iar tatal revine in `read()' pe fifo pentru a prelua
> ->>noi structuri ...
> ->>
> ->>Mecanismul merge dar, la un moment dat citesc 0 bytes din fifo
> ->>si pipa nu mai e blocanta! (iese imediat din `read()' cu 0 bytes 
> ->>cititi ...
> 
>  cand citesti 0 bytes, este EOF (no more bytes to read). cel putin asa 
> zice manualul la read.

pai da ... asa si este dar eu vreau sa mai citesc si de la alt proces 
care urmeaza sa scrie in fifo ...

> 
> ->>
> ->>Atunci am incercat o mica smecherie ... daca citesc 0 bytes
> ->>inchid si redeschid pipa si reancerc ...
> ->>dar asa se pare ca pierd date! adica nu mai primesc anumite
> ->>structuri ce totusi le`am scris in fifo cu succes ...
> 
>  itzi zic eu alta si mai si. foloseste select pe descriptorul ala. In 
> felul asta scapi de multe belele.  select-ul asta este cea mai bestiala 
> functie pe care o stie C-ul in ceea ce priveste comunicarea intre 2 
> procese, aflate sau nu pe acceasi masina(sockets, named pipes etc)

ok, merci mult! am sa incerc si cu select ... 

> 
> ->>
> ->>eu as renunta la fifo in acest caz dar nu stiu cum sa comnunic 
> ->>mici structuri de date intre diferite procese si sa mai fie
> ->>si blocant fi in ordinea `fifo' trimisu/cititul ...
> 
>  shmem, sau fisiere cu lock-uri.

mda dar nu stiu daca e mai eficient asa ... structura e f mica (are vreo
40 bytes)

---
Send e-mail to '[EMAIL PROTECTED]' with 'unsubscribe rlug' to 
unsubscribe from this list.

Raspunde prin e-mail lui