ERLEDIGT
NEIN
NEIN
ANTWORTEN
1
1
ZUGRIFFE
665
665
EMPFEHLEN
-
10.02.06 18:02 #1
- Registriert seit
- Apr 2005
- Beiträge
- 2
Hallo
ich habe mal eine wichtige Frage. Wer kann mir denn mal sagen wie ich im Borland C++ Builder 5 einen Kritischen Abschnitt erstellen kann. Habe 2 threads die beide auf eine Ressorce zugreifen. Ich habe zwar die Idee es mit einer Semathore zu versuchen aber ein Kritischer Abschnitt währe besser da dieser Abschnitt nicht unterbrochen werden darf... Kann mir jemand helfen... Codeabschnitte währen am hilfreichsten. Außerdem weiß ich nicht welche header benutzt wird.
-
Hallo,
Hallo der Begriff "Kritischer Abschnitt" ist ein theoretischer Begriff...Ich habe zwar die Idee es mit einer Semathore zu versuchen aber ein Kritischer Abschnitt währe besser da dieser Abschnitt nicht unterbrochen werden darf.
Praktisch lösen tut man dies durch wechselseitigen Ausschluss.
Es gibt 4 Bedingungen für eine gute Lösung des wechselseitigen Ausschlusses:
1. Keine zwei Threads dürfen gleichzeitig in ihren kritischen Abschnitten sein.
2. Es dürfen keine Annahmen über Geschwindigkeit und Anzahl der CPUs gemacht werden.
3. Kein Thread darf außerhalb eines kritischen Abschnitts einen anderen Thread am Eintritt in einen kritischen Abschnitt hindern.
4. Jeder Thread muss die Möglichkeit haben, in endlicher Zeit in seine kritischen Abschnitte eintreten zu dürfen.
Lösen kannst du dies indem du die von dir angesprochenen Semaphore z.B.
verwendest... Mutexe (binäre Semaphore) wären auch eine Möglichkeit:
Hier mal ein bisl Pseudocode für die Lösung mittels binärer Semaphore:
Code :1 2 3 4 5 6 7 8 9 10 11
Semaphore s = 1; procedure Thread begin while(true) begin down(s); criticalSection(); up(s); end end
Gruß
RedWing"I'm not deaf, I'm ignoring you"
----
Ähnliche Themen
-
Borland C++ Builder
Von riccardo1 im Forum C/C++Antworten: 7Letzter Beitrag: 02.05.08, 19:57 -
2 Versionen von Borland C++ Builder 6 Pro
Von Argonsputter im Forum Borland CBuilder und VCLAntworten: 0Letzter Beitrag: 13.09.07, 15:48 -
Borland C++ Builder?
Von Sinac im Forum C/C++Antworten: 9Letzter Beitrag: 12.12.06, 16:11 -
Borland C++ Builder + ADO Edit
Von coVo2k im Forum Borland CBuilder und VCLAntworten: 0Letzter Beitrag: 11.01.05, 20:16 -
Borland c++ Builder
Von js-mueller im Forum C/C++Antworten: 11Letzter Beitrag: 11.09.03, 12:57





Zitieren
Login






