lukituskonflikteja
Lukituskonflikteja ovat estot, jotka syntyvät samanaikaisessa ohjelmoinnissa tai tietokantayhteyksissä, kun useat säikeet tai prosessit kilpailevat samoista resursseista ja pitävät lukituksia kiinni odottaen toisten vapauttamista. Tämä voi johtaa järjestelmän pysähtymiseen tai hidastumiseen, jolloin ohjelma ei etene. Yleisimmät ilmiöt ovat deadlock (kuollut tila, jossa prosessit odottavat toistensa vapauttamia lukituksia) ja livelock (tilanne, jossa prosessit jatkuvasti reagoivat toistensa muutoksiin, muttei edetä).
Taustalla ovat tyypillisesti epäyhtenäinen lukituksen hallinta, resursseille määritelly lukitus, hold-and-wait -tilanteet sekä kiertävä odotus. Esimerkiksi kahden
Ratkaisukeinot voidaan jakaa ennaltaehkäisyyn, havaitsemiseen ja palautukseen. Ennaltaehkäisyssä voidaan käyttää lukitusjärjestystä, jolloin kaikki säikeet hankkivat lukitukset
Lukituskonflikteja voidaan vähentää sekä suunnitteluvaiheessa että käyttöönoton yhteydessä, jotta järjestelmä säilyttää suorituskykynsä ja luotettavuutensa korkealla.