Multicore und Synchronisation
Welche Verwendung eines Semaphors mit Zähler ist am treffendsten?
- ADen Wert einer Variablen stets zu verdoppeln
- BDie Programmausführung vollständig auf einem Thread zu bündeln
- CEine Ressource mit festgelegter Zahl gleichzeitiger Nutzungen (z. B. bis zu 4 Verbindungen) von bis zu vier Threads gleichzeitig nutzen zu lassen
Antwort und Erläuterung anzeigen
Antwort: C. Eine Ressource mit festgelegter Zahl gleichzeitiger Nutzungen (z. B. bis zu 4 Verbindungen) von bis zu vier Threads gleichzeitig nutzen zu lassen
Ein Semaphor besitzt einen Zähler für die verbleibende Anzahl, den man vor der Nutzung um 1 verringert (bei 0 wird gewartet, bis er größer wird) und nach der Nutzung um 1 erhöht. Mit dem Anfangswert 4 können bis zu vier Threads gleichzeitig die Ressource nutzen. Mit dem Anfangswert 1 lässt er sich wie eine Sperre für den gegenseitigen Ausschluss verwenden. Wartende Threads werden üblicherweise schlafen gelegt und vom Betriebssystem geweckt.