On Tue, 2003-02-11 at 09:10, Dorin Lazar wrote:
> On Monday 10 February 2003 23:33, Florin Malita wrote:
> > O_NONBLOCK nu e necesar.
>   Si totusi...
>   La nivel absurd, un alt read(2) din alt thread ar putea sa citeasca 
> din descriptorul respectiv. De exemplu select-ia se face pe un 
> filedescriptor care e citit in alt fir. (caz absurd, greseala majora de 
> programare dar se poate :) ). Avea si Mihai dreptatea lui... :)

Da. Dar asta tine, asa cum spui, de programare eronata. Este ca si cum
intre select() si read() as avea instructiuni suplimentare care se pot
atinge de soket/file. E la fel de grav. Daca ai nevoie sa te atingi de
un fd in 2 thread-uri separate, le poti proteja printr-un mutex; in
felul asta, intre select() si read(), cat timp mutex-ul e obtinut, si
daca ai avut grija ca in celelalte thread-uri sa nu te atingi de fd fara
sa detii mutex-ul, stii ca nu s-a schimbat aiurea starea fd-ului.

georgeb
-- 
George Barbarosie <[EMAIL PROTECTED]>
intelinet.ro SRL

--
Pentru dezabonare, trimiteti mail la 
[EMAIL PROTECTED] cu subiectul 'unsubscribe rlug'.
REGULI, arhive si alte informatii: http://www.lug.ro/mlist/


Raspunde prin e-mail lui