Problem signalizacije izmedju niti
22.06.2003. u 12:44 · pre 284 meseci
#1
Imam sledeci problem :
Napravio sam program proizvodjac-potrosac koji razmenjuju podatke preko bafera. To su u stvari jedna nit proizvodjac i tri niti potrosaca. Potrebno je izvrsiti signalizaciju niti, tj kada je bafer pun zaustavlja se proizvodjac (a nakon uzimanja jednog podatka signalizira se proizvodjacu da nastavi sa radom)i kada je bafer prazan zaustavljaju se potrosaci( a nakon unosa jednog podatka signalizira im se da mogu da nastave sa radom).
Mislim da bi to trebalo uraditi sa
Monitor::Pulse(proizvodjac);
...
Monitor::wait(potrosac);
Monitor::Pulse(potrosac);
...
Monitor::wait(proizvodjac);
ali ne znam kako se koriste ove funkcije u Visual C++.NET-u, tj ne znam sta bi konkretno trebalo da stavim kao argumente ovih funkcija.Da li neko moze da mi pomogne da resim ovaj problem?
Hvala.
Napravio sam program proizvodjac-potrosac koji razmenjuju podatke preko bafera. To su u stvari jedna nit proizvodjac i tri niti potrosaca. Potrebno je izvrsiti signalizaciju niti, tj kada je bafer pun zaustavlja se proizvodjac (a nakon uzimanja jednog podatka signalizira se proizvodjacu da nastavi sa radom)i kada je bafer prazan zaustavljaju se potrosaci( a nakon unosa jednog podatka signalizira im se da mogu da nastave sa radom).
Mislim da bi to trebalo uraditi sa
Monitor::Pulse(proizvodjac);
...
Monitor::wait(potrosac);
Monitor::Pulse(potrosac);
...
Monitor::wait(proizvodjac);
ali ne znam kako se koriste ove funkcije u Visual C++.NET-u, tj ne znam sta bi konkretno trebalo da stavim kao argumente ovih funkcija.Da li neko moze da mi pomogne da resim ovaj problem?
Hvala.
Re: Problem signalizacije izmedju niti