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.
