Mis on võidusõidu seisund?

Võistlustingimused on seotud süsteemi või üksiku seadme katsetega multitegumtöös osaleda. Üldjuhul on võistlusseisund siis, kui süsteem üritab töödelda kahte või enamat erinevat toimingut samaaegselt, kuid ei suuda seda teha. Rikke põhjuseks on see, et toimingud ei ole õiges järjestuses, mis võib viia süsteemi väljalülitumiseni.

Kuigi paljud erinevad seadmed on konfigureeritud võimaldama multitegumtööd, on siiski olemas sisemine protsess, mis loob funktsioonide hierarhia. Teatud funktsioonide toimimiseks peavad eelnevalt toimuma teised funktsioonid. Kuigi lõppkasutaja tajub, et kõik funktsioonid võivad toimuda samal ajal, ei pruugi see nii olla.

Võistlustingimus luuakse siis, kui kaks või enam toimingut võistlevad üksteisega, et jõuda lõpule enne teisi toiminguid. Kui kõik üksikud funktsioonid on õigesti korraldatud, viib see kõigi funktsioonide eduka õigeaegse täitmiseni. Kui aga toimingute jada tasakaalust välja viia, tekitab see kitsaskoha. Halvemal juhul muudab võistlusseisund süsteemil võimatuks jätkata kõigi funktsioonide töötlemist praeguses järjekorras. Kuna süsteemil võib olla vaja töödelda stringi viiendat funktsiooni enne esimese ja teise funktsiooni lõpetamist, tuleb kogu string katkestada ja õiges järjekorras uuesti luua.

Üks levinud näide rassitingimustest on seotud andmete töötlemisega. Kui süsteem saab uute andmete kirjutamise ajal käsu olemasolevate andmete lugemiseks, võib see põhjustada konflikti, mille tõttu süsteem mingil viisil välja lülitub. Süsteem võib kuvada teatud tüüpi tõrketeate, kui töödeldavate andmete hulk avaldab olemasolevatele ressurssidele liigset koormust või süsteem võib lihtsalt välja lülituda. Kui see juhtub, on tavaliselt hea mõte süsteem taaskäivitada ja jada uuesti alustada. Kui töödeldavate andmete hulk on märkimisväärne, võib olla parem lubada uute andmete assimileerimine lõpule viia enne, kui proovite lugeda praegu salvestatud andmeid.

Paljud süsteemid väldivad võistlustingimuste tekkimist, seades tööprotokollides prioriteedid. Prioriteedid on kehtestatud nii, et need toimiksid hästi süsteemi võimaluste piires ja piiraksid seega võistlustingimuste arengut.