Semafor

W informatyce semafor to zmienna, która kontroluje dostęp do jednego lub większej liczby zasobów. Jest to narzędzie używane przez programistów, aby zagwarantować, że funkcje uzyskują dostęp tylko do prawidłowych danych i wykonują się we właściwym czasie. Semafor może zapobiegać zakleszczeniu lub wyścigowi, uniemożliwiając dostęp do zasobu, gdy nie jest on dostępny.

W programowaniu istnieją dwa główne typy semaforów: binarne i zliczające.

Semafory binarne

Semafor binarny to zmienna logiczna, która może przyjmować tylko dwie wartości (0 lub 1). Często służy jako blokada ograniczająca dostęp do funkcji lub zasobu. Na przykład semafor A kontroluje funkcję getData(). Jeśli A = 0, funkcja getData() nie zostanie wykonana. Jeśli A = 1, funkcja getData() zostanie wykonana. Semafor binarny jest również uznawany za flagę lub przełącznik, który jest włączony albo wyłączony.

Semafory zliczające

Semafor zliczający może mieć dowolną nieujemną wartość typu liczba całkowita, nazywaną również liczbą całkowitą nieujemną. Jego wartość może zwiększać się lub zmniejszać w zależności od wyników działania jednej lub większej liczby funkcji. Na przykład semafor zliczający może śledzić liczbę dostępnych zasobów w puli zasobów. Jeśli semafor jest zmniejszany częściej, niż zwiększany, w końcu osiągnie wartość 0. Wartość zero oznacza, że nie ma już dostępnych zasobów.

NOTE:Semafor w świecie rzeczywistym to flaga lub inny przedmiot używany do przekazywania sygnałów na odległość. Na przykład osoba może unieść drąg z pomostu, aby zasygnalizować kapitanowi promu, że chce wejść na pokład.[/n]

Zaktualizowano February 1, 2020 przez Per C.

quizSprawdź swoją wiedzę

Which OS feature enables processes to communicate with each other?

A
GUI
0%
B
API
0%
C
IPC
0%
D
SDK
0%
Correct! Incorrect!     View the IPC definition.
More Quizzes →

Słownik komputerowy Tech Terms

Definicja Semafor na tej stronie jest oryginalną definicją napisaną przez autorów TechTerms.com. Jeśli chcesz odwołać się do tej strony lub zacytować tę definicję, użyj zielonego paska cytowania bezpośrednio poniżej definicji.

Naszym celem jest wyjaśnianie terminologii komputerowej w prosty i zrozumiały sposób. Dążymy do dokładności i prostoty w każdej publikowanej definicji. Jeśli masz uwagi lub chcesz zaproponować nowy termin techniczny, skontaktuj się z nami.

Newsletter Tech Terms

Poszerzaj swoją wiedzę techniczną dzięki naszemu codziennemu lub tygodniowemu newsletterowi! Subskrybuj już dziś i otrzymuj nowe terminy oraz quizy prosto do skrzynki odbiorczej.

Zapisz się do bezpłatnego newslettera TechTerms

Jak często chcesz otrzymywać e-maile?

Możesz wypisać się lub zmienić częstotliwość w dowolnym momencie, korzystając z linków w każdym e-mailu. Pytania? Skontaktuj się z nami.

Uwaga: Newsletter jest wysyłany w języku angielskim.