<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:times new roman, new york, times, serif;font-size:12pt">Ai problema de la modul in care faci compilarea+linkarea, probabil ai cod in dublu exemplar. <br>Ai grija la makefile...<br><div>&nbsp;</div>---<br>Dragos<span style="color: rgb(91, 91, 91);"></span><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;"><br><br><div style="font-family: times new roman,new york,times,serif; font-size: 12pt;">----- Original Message ----<br>From: Laura Ionita &lt;laura.ionita@gmail.com&gt;<br>To: so@cursuri.cs.pub.ro<br>Sent: Saturday, February 9, 2008 5:02:50 AM<br>Subject: [so] [Tema3] Modificare date din ControlMonitor<br><br>#se 
pare 
ca 
de 
pe 
adresa 
de 
yahoo 
nu 
merge, 
asa 
ca 
retrimit 
emailul.<br>Scuze 
daca 
ajunge 
in 
dublu 
exemplar.<br><br><br>Salutare,<br><br>La 
tema 

pe 
Windows 
(am 
portat 
tema 
de 
pe 
Linux, 
unde 
merge 
foarte<br>bine) 
am 
urmatoarea 
problema:<br><br><br>Testul 
2:<br>test: 
Create......................................................passed<br><br>MutexEnterLock<br>&nbsp; 
&nbsp; 
Enter<br>MutexEnterUnlock<br><br>MutexEnterLock<br>&nbsp; 
&nbsp; 
Enter<br>&nbsp; 
&nbsp; 
&nbsp; 
&nbsp; 
IncEnter();&nbsp; 
&nbsp; 
//functia 
din 
ControlMonitor<br>&nbsp; 
&nbsp; 
&nbsp; 
&nbsp; 
MutexEnterUnlock<br>&nbsp; 
&nbsp; 
&nbsp; 
&nbsp; 
DecremSem 
7bc<br><br>test: 
FunctiaA....................................................<br>CORECT: 





0<br>variabilele 
globale: 



0<br>-----&gt;failed<br><br>MutexLeaveLock<br>&nbsp; 
&nbsp; 
Leave<br>&nbsp; 
&nbsp; 
&nbsp; 
&nbsp; 
IncremSem 
7bc<br>&nbsp; 
&nbsp; 
&nbsp; 
&nbsp; 
DecEnter()&nbsp; 
&nbsp; 
//functia 
din 
ControlMonitor<br> 
MutexLeaveUnlock<br><br>&nbsp; 
&nbsp; 
&nbsp; 
&nbsp; 
MutexEnterLock<br>//alte 
comenzi 
din 
Enter..<br>MutexEnterUnlock<br><br>test: 
FunctiaB....................................................<br>CORECT: 





0<br>variabilele 
globale: 



0<br>passed<br><br><br>Cum 
functioneaza 
functiile 
mele:<br><br>Enter:<br>Daca 
monitorul 
este 
ocupat, 
incrementeaza 
EnterQueue-ul, 
deblocheaza<br>monitorul 
si 
thread-ul 
asteapta 
sa 
fie 
planificat<br>(WaitForSingleObject). 
Functia 
se 
va 
termina 
dupa 
ce 
are 
loc<br>planificarea.<br><br>Leave:<br>Planifica 
alt 
thread 
din 
una 
din 
cozi 
(in 
cazul 
de 
fata 
din<br>EnterQueue) 

ReleaseSem, 
decrementeaza 
EnterQueue 
si 
iese.<br><br><br>Lock-ul 
folosit 
este 
acelasi 
la 
toate 
functiile.<br><br><br>Iar 
la 
Testul 
3, 
am 
aceeasi 
problema 
cu 
modificarea 
datelor 
globale<br>din 
ControlMonitor: 
declar 
un 
monitor 
cu 

conditii 
si 
dupa 
2<br>Enter-uri 
la 
primul 
Wait 
primesc 
eroarea 
"Ai 
declarat 
ca 
ai 
0<br>conditii; 
deci 
nu 
poti 
zice 
ca 
incrementezi/decrementezi 
con" 
(adica<br>se 
modifica 
NrCond 
atat 
la 
Test3, 
cat 
si 
la 
Test2)<br><br><br>Are 
cineva 
vreo 
idee 
ce 
se 
intampla? 
Multumesc 
anticipat,<br>Laura<br>_______________________________________________<br>so 
mailing 
list<br><a ymailto="mailto:so@cursuri.cs.pub.ro" 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></div><br></div></div><br>
      <hr size=1>Be a better friend, newshound, and 
know-it-all with Yahoo! Mobile. <a href="http://us.rd.yahoo.com/evt=51733/*http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ "> Try it now.</a></body></html>