Semafoor

In de informatica is een semafoor een variabele die de toegang tot een of meer bronnen beheert. Het is een hulpmiddel dat ontwikkelaars gebruiken om ervoor te zorgen dat functies alleen toegang hebben tot geldige gegevens en op het juiste moment worden uitgevoerd. Een semafoor kan een deadlock of race condition voorkomen door toegang tot een bron te weigeren wanneer deze niet beschikbaar is.

Er zijn twee hoofdtypen semaforen in computerprogramma's: binaire semaforen en telsmaforen.

Binaire semaforen

Een binaire semafoor is een booleaanse variabele die slechts twee mogelijke waarden kan hebben (0 of 1). Deze wordt vaak gebruikt als vergrendeling om de toegang tot een functie of bron te beperken. Een semafoor A beheert bijvoorbeeld functie getData(). Als A = 0, wordt getData() niet uitgevoerd. Als A = 1, wordt getData() uitgevoerd. Een binaire semafoor wordt ook beschouwd als een vlag of een schakelaar die aan of uit staat.

Telsemaforen

Een telsemafoor kan elk niet-negatief geheel getal zijn, ook wel een natuurlijk getal genoemd. De waarde ervan kan toenemen of afnemen op basis van de resultaten van een of meer functies. Een telsemafoor kan bijvoorbeeld het aantal beschikbare bronnen in een bronnenpool bijhouden. Als de semafoor vaker wordt verlaagd dan verhoogd, bereikt deze uiteindelijk 0. Een waarde van nul geeft aan dat er geen bronnen meer over zijn.

NOTE: Een "semafoor" is in de echte wereld een vlag of ander object dat wordt gebruikt om op afstand een signaal te geven. Iemand kan bijvoorbeeld een paal omhooghouden vanaf een aanlegsteiger om een veerbootkapitein te laten weten dat die persoon aan boord wil komen.

Bijgewerkt February 1, 2020 door Per C.

quizTest je kennis

Which of the following is an example of white box testing?

A
Quality control checks performed on a hardware device
0%
B
Microchip error-checking performed in a clean room
0%
C
Software testing performed by artificial intelligence
0%
D
Application testing performed by the original developer
0%
Correct! Incorrect!     View the White Box Testing definition.
More Quizzes →

Het Tech Terms computerwoordenboek

De definitie van Semafoor op deze pagina is een originele definitie geschreven door de auteurs van TechTerms.com. Als je naar deze pagina wilt verwijzen of deze definitie wilt citeren, gebruik dan de groene citatiebalk direct onder de definitie.

Ons doel is om computerterminologie op een begrijpelijke manier uit te leggen. We streven naar nauwkeurigheid en eenvoud bij elke definitie die we publiceren. Als je feedback hebt over deze definitie of een nieuwe technische term wilt voorstellen, neem dan contact met ons op.

De Tech Terms-nieuwsbrief

Verbeter je technische kennis met onze dagelijkse of wekelijkse nieuwsbrief! Abonneer je vandaag nog en ontvang nieuwe termen en quizzen in je inbox.

Schrijf je in voor de gratis TechTerms-nieuwsbrief

Hoe vaak wil je een e-mail ontvangen?

Je kunt je op elk moment uitschrijven of je frequentie wijzigen via de links in elke e-mail. Vragen? Neem contact met ons op.

Let op: de nieuwsbrief wordt in het Engels verzonden.