V računalniškem programiranju je semafor signalna tehnika, ki uporablja posebne spremenljivke znotraj računalniškega programskega jezika. Ta signal se uporablja za predstavljanje števcev in izjav resnična-napačna. Uporaba semaforjev je bila sprejeta v večini programskih jezikov. Bolj je razširjen v objektno usmerjenem programiranju, vključno z Java®, C# in Smalltalk®.
Semafori se v računalniškem programiranju uporabljajo že več desetletij. Te tehnike se običajno izvajajo v nizkonivojski programski kodi. To se običajno uporablja kot tehnika sinhronizacije za upravljanje sprožilcev in dogodkov v aplikaciji. Spremenljivka semafora se spremlja glede sprememb, kar signalizira spremembo v procesu znotraj aplikacije.
Ustvarjanje semaforja v programu naredi programsko opremo bolj intuitivno. Ta slog kodiranja velja za najboljšo prakso razvijalcev programske opreme, ker olajša vzdrževanje kode. Uporaba logičnih spremenljivk v programskem programu omogoča boljši logični tok. To lahko uporabite v zanki toka, da omogočite nadaljevanje procesa, dokler se ne spremeni logična zastavica.
Računalniško programiranje je zelo zapleten logičen tok podatkov in procesnih korakov. Ta prizadevanja za kodiranje zahtevajo uporabo zastav in števcev za upravljanje logičnega toka procesov znotraj programa. Uporaba semaforja je dobra praksa, saj olajša branje kode.
Časovnik je primer semaforja v programskem programu. Večina rutin časovnika je potrebna za dokončanje poslovnih korakov na podlagi načrtovanih opravil. Rutina časovnika preveri notranjo uro računalniškega sistema, da ugotovi, kdaj se zažene in ustavi. To je podobno budilki, ki se sproži ob določenem času. Proces časovnika ostane v mirovanju, dokler ura računalnika ne doseže vnaprej določene nastavitve.
Številni računalniški programi zahtevajo protipostopke. To je logični tok, ki mora pred dokončanjem dokončati določeno število ali ponovitve. Semafor se običajno uporablja v rutini števca za predstavitev števila potrebnih ponovitev. Program bo zapustil pretočno zanko, ko se števec ujema z vnaprej določeno nastavitvijo ponovitve.
Semafori se običajno uporabljajo v notranjih procesih računalniških operacijskih sistemov. Ti procesi na nizki ravni so potrebni za zagotovitev, da lahko računalnik upravlja več nalog. Uporaba zastav in števcev je bolj razširjena v operacijskem sistemu, ker je odgovorna za usklajevanje kompleksnih nalog za več programov v računalniku.