[so] De ce TLS ? - continuare:)
Stela Suciu
so@atlantis.cs.pub.ro
Wed, 26 Nov 2003 08:15:21 -0800 (PST)
>
> > 3. Monitorul se poate distruge doar atunci cand nu
> > exista fir activ in el si nu exista nici un fir
> care
> > este blocat intr-o coada de asteptare sau la vreo
> > variablia de conditie ?
>
> Da, asta ar trebui sa faca destroy. Ar mai trebui sa
> va scrieti o functie de distrugere fortata,
> _destroy,
> pe care s-o apelati de exemplu la oprirea fortata a
> programului (Ctrl+C) pentru ca altfel nu se pot
> debloca firele care asteptau la conditii.
>
> Cosmin
>
>
E corect daca in functia destroy:
- astept ca toate firele din cozile waiting,
signaller si entry sa plece sau sa se blocheze la
variabile conditie
- setez un flag de destroy (de ex un semafor) apoi
deblochez toate firele de la variabilele conditie; ele
citesc flag-ul inainte de a ajunge in waiting, iar
daca este setat pe destroy fac pthread_exit() ?
- astept sa primesc o notificare ca toate firele au
facut pthread_exit
- apoi pot distruge toate elementele de sincronizare
> __________________________________
> Do you Yahoo!?
> Protect your identity with Yahoo! Mail AddressGuard
> http://antispam.yahoo.com/whatsnewfree
> _______________________________________________
> so mailing list
> so@atlantis.cs.pub.ro
>
http://atlantis.cs.pub.ro/cgi-bin/mailman/listinfo/so
__________________________________
Do you Yahoo!?
Free Pop-Up Blocker - Get it now
http://companion.yahoo.com/