<div>La asemenea intrebari (pentru aplicatii reale) trebuie sa implementezi si asa si asa si sa masori performanta in cele doua cazuri (inclusiv pe multiprocesor). Nu ai de unde sa stii sigur cum e mai bine, poti doar sa estimezi.
</div>
<div> </div>
<div>In principiu, daca citirea nu tine foarte putin, 2 scaleaza mai bine.<br><br></div>
<div class="gmail_quote">On Nov 14, 2007 9:50 AM, Andrei Ciuca <<a href="mailto:andrei.ciuca@gmail.com">andrei.ciuca@gmail.com</a>> wrote:<br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">Pentru a implementa sincronizarea , am aveam 2 optiuni :<br><br>1) cea mai simplu de implementat<br> folosim un singur semafor, in zona de memorie partajata nu are voie mai mult de o entitate (serverul sau unul dintre clienti)
<br><br>2)<br> folosim 3 semafoarte , in zona de memorie partajata au voie serverul sau oricati clienti, dar din momentul in care serverul <br> doreste accesul , nici un client nu mai incearca sa obtina lockul asupra memoriei pana cand serverul nu iese din acea
<br> zona ... practic ofera acces multiplu pentru clienti si incearca sa ofere serverului prioritate (am zis incearca pentru ca se <br> pare ca orice solutie pentru prioritate are un caz "cel mai defavorabil" care daca apare mereu , serverul poate sa nu obtina
<br> deloc accesul la memorie)<br><br>Acum intrebarea este daca folosind atatea lockuri pentru cazul 3 nu se incetineste prea mult executia programului fata <br>de celalalt caz , chiar daca in acel caz nu avem acces multiplu pentru cititori .... cum ar fi mai bine ?
<br>_______________________________________________<br>so mailing list<br><a href="mailto:so@cursuri.cs.pub.ro">so@cursuri.cs.pub.ro</a><br><a href="http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so" target="_blank">http://cursuri.cs.pub.ro/cgi-bin/mailman/listinfo/so
</a><br><br></blockquote></div><br>