Lenktynių aplinka
Straipsnis iš Vikipedijos, laisvosios enciklopedijos.
Lenktynių aplinka (angl. race condition) situacija kai objektui realiai pritaikoma operacijų seka nesutampa su ta, kurios tikėjosi programuotojas. Taip atsitinka kuomet objektu vienu metu manipuliuoja dvi ir daugiau gijų. Pavyzdžiui, šis metodas (java):
static int skaitiklis; int sekanti_reikšmė() { skaitiklis = skaitiklis + 1; // Kita gija gali šioje vietoje padidinti skaitiklį dar kartą. return skaitiklis; },
jei vykdomas kelių gijų vienu metu, gali keliskart grąžinti tą pačią skaitiklio reikšmę, ko nepatyręs programuotojas paprastai nesitiki.
Dažnai lenktynių aplinkos yra labai sunkiai aptinkamos, bet nesunkiai ištaisomos įvairiais semaforais.