Ministero dello Sviluppo Economico

CERT Nazionale Italia - Computer Emergency Response Team

race condition

In informatica, una race condition (o “corsa critica”) indica una condizione che si verifica in alcuni sistemi quando due o più processi o thread in esecuzione accedono contemporaneamente in scrittura ad una risorsa condivisa (un’area di memoria, un file, una periferica, ecc.).

Il risultato finale dell’esecuzione di questi processi dipende dall’ordine con cui vengono eseguiti. Il valore finale assegnato alla risorsa condivisa sarà quello dato dall’ultimo processo che vi ha acceduto. Siccome l’ordine con cui i processi accedono alla risorsa dipende dalla loro temporizzazione o dalla sequenza con cui vengono eseguiti, il risultato finale risulta non predicibile.

Spesso, una race condition può provocare effetti indesiderati sul sistema, malfunzionamenti e potenziali problemi di sicurezza.