Willkommen! Einloggen Ein neues Profil erzeugen

erweitert

Produzenten Konsumenten Problem mit Semaphore

geschrieben von Julien Thoma 
Produzenten Konsumenten Problem mit Semaphore
13.03.2011 16:00:01
Hallo,

Wir hatten ja im Testat die Aufgabe bei der down(empty) und down(mutex) vertascht wurden beim producer.
Ich hatte diese Aufgabe im Testat falsch und habe keine Musterlösung dafür.
Daher habe ich mich einige Zeit damit beschäftigt und kam zu der meines Erachtens einzigen Möglichkeit(ich wusste dass es nicht funktioniert), dass es nicht funktioniert.
Ich wollte fragen ob diese Abfolge stimmt und es der Lösung entspricht:

producer fügt Objekte ein bis
count(empty) = 0
count(full)= max_buffer
producer down(mutex) => count(mutex) = 0
producer down(empty) => count(empty) = -1 => producer schläft ein
Contextwechsel zu consumer
consumer down(full)
consumer down(mutex) => count(mutex) = -1 => consumer schläft ein
beide schlafen für immer
=> Deadlock


Danke für die Antwort

Julien
Re: Produzenten Konsumenten Problem mit Semaphore
13.03.2011 17:29:34
Sorry, Sie haben nicht die erforderliche Berechtigung, um in diesem Forum zu schreiben.