Synkronointimekanismit
Synkronointimekanismit ovat ohjelmoinnissa käytettyjä keinoja koordinoida rinnakkaisten toimintojen suoritusta. Niiden tavoitteena on estää kilpailevan pääsyn jaettuihin resursseihin, varmistaa oikea suoritusjärjestys sekä ylläpitää muistissa olevaa eheyttä ja johdonmukaisuutta. Käytännössä ne auttavat estämään kilpailutilanteita, väärän järjestyksen aiheuttamia virheitä sekä deadlock-tilanteita.
Ne voidaan jakaa useisiin ryhmiin. Yleisimpiä ovat mutual exclusion -työkalut kuten lukot (mutex), binaariset semaforit ja
Alakohtaisia esimerkkejä ovat mutex-lukot, spinlockit, luku-kirjoituslukot sekä erilaiset semaforit ja condition variables ohjelmointikielissä tai kirjastoissa. Korkeamman
Käytännön sovelluksissa synkronointimekanismeja käytetään sekä rinnakkaisissa ohjelmissa että hajautetuissa järjestelmissä, joissa on erillisiä prosesseja tai palvelimia.
Näytteet: Lamportin kellot, vektorikellot, Paxos ja Raft hajautetuissa järjestelmissä; NTP ja PTP ajan synkronointiin verkossa; muistijärjestysvaatimukset
Katso myös: mutkuttumat, lukot, semaforit, condition variables, barrierit, Lamportin kellot, Raft, Paxos, NTP, PTP.