2009-08-15 7 views
1

Ein Semaphor ist ein Mechanismus zur Vermeidung von Wettlaufbedingungen. Aber welche Bedeutung hat der Anfangswert eines Semaphors?Welche Bedeutung hat der Anfangswert eines Semaphors?

Angenommen, ein Semaphor hat einen Anfangswert von 5, können 5 Prozesse gleichzeitig auf eine gemeinsam genutzte Ressource zugreifen?

Antwort

2

Semaphore sind eine Möglichkeit, mehrere Threads der Kontrolle zu koordinieren, nicht nur für den gegenseitigen Ausschluss. Zum Beispiel kann eine klassische Erzeuger-Verbraucher-Warteschlange mit fester Größe einen Semaphor verwenden, der für Erzeuger auf einen Wert ungleich Null initialisiert ist, so dass sie blockieren, wenn zu viele Elemente in dem Puffer vorhanden sind.

4

Meine Kenntnisse über Semaphoren sind rostig, aber wenn Sie einen Semaphor mit einer Anfangszahl von 5 erstellen, bedeutet dies, dass 5 Threads (keine Prozesse) gleichzeitig auf den Semaphor zugreifen können. Werfen Sie einen Blick auf diese Links für einige weitere Details:

+0

danke für den Link – freenight

+0

1 - Groß Links –

Verwandte Themen