Wat is Semafoor?

Synchronisatiemechanisme met een teller voor het resterende aantal. Vóór gebruik wordt 1 afgetrokken (bij 0 wordt gewacht) en na gebruik 1 opgeteld. Wordt gebruikt voor het beheer van middelen waarvan er een vast aantal tegelijk gebruikt kan worden.

Japanse benaming: セマフォ

“Semafoor” komt voor in 1 oefenvragen uit 1 onderwerpen, bijv. Multicore en synchronisatie.

Vakgebied: Multicore en synchronisatie

Nu oefenen: vragen over Semafoor

Wat is het meest passende gebruik van een tellende semafoor?

  1. ADe waarde van een variabele altijd verdubbelen
  2. BDe uitvoering van het programma bundelen in één thread
  3. CEen resource met een vast aantal gelijktijdige gebruikers (bijvoorbeeld maximaal 4 verbindingen) door maximaal 4 threads tegelijk laten gebruiken
Antwoord en toelichting tonen

Antwoord: C. Een resource met een vast aantal gelijktijdige gebruikers (bijvoorbeeld maximaal 4 verbindingen) door maximaal 4 threads tegelijk laten gebruiken

Een semafoor heeft een teller voor het resterende aantal, verlaagt die vóór gebruik met 1 (bij 0 wordt gewacht tot hij toeneemt) en verhoogt hem na gebruik met 1. Bij beginwaarde 4 kunnen maximaal 4 threads tegelijk de resource gebruiken. Bij beginwaarde 1 kan hij als lock voor uitsluiting dienen. Wachtende threads worden gewoonlijk door het besturingssysteem in slaap gebracht en gewekt.

“Semafoor” in de toelichting

Vragen met “Semafoor” (1)

  1. Wat is het meest passende gebruik van een tellende semafoor?

Vergelijkingen met deze term

Verwante termen

Numerieke apertuur (NA) ABA-probleem Acquire-release Atomaire instructie Barrièresynchronisatie Compare-and-swap Conditievariabele Data race Deadlock Directorygebaseerde coherentie (directory-based)

Naar de woordenlijst