Кіріспе

Есептеуде жағдайды үнемі тексеру Компьютерлік ғылым мен бағдарламалық жасақтамада, бос күту, бос циклға түсу немесе айналу – процестің жағдайдың рас екенін қайта-қайта тексеруі, мысалы, пернетақтадан кіріс немесе құлыптың қолжетімділігі. Айналу белгілі бір уақытқа кідіру жасау үшін де қолданылуы мүмкін, бұл әдіс белгілі бір уақыт күту мүмкіндігі жоқ жүйелерде қажет болды. Процессордың жылдамдығы компьютерлер арасында әртүрлі болады, әсіресе кейбір процессорлар ағымдағы жүктемеге байланысты жылдамдықты динамикалық түрде өзгертуге арналған. Осының салдарынан, уақытты кідіру әдісі ретінде айналу әртүрлі жүйелерде болжамсыз немесе тіпті үйлесімсіз нәтижелер беруі мүмкін, егер процессордың "ешқандай операция орындамау" циклын орындауға қажетті уақытын анықтайтын код қосылмаса немесе циклдық код нақты уақыт сағатын тексермесе. Көп жағдайларда айналу – дұрыс емес тәсіл саналады және одан аулақ болу керек, себебі басқа тапсырманы орындауға жұмсалатын процессор уақыты пайдасыз әрекетке ысырап болады. Айналу кейбір жағдайларда, әсіресе SMP жүйелерінде жұмыс істеуге арналған операциялық жүйелердегі спинлоктарды іске асыруда қолданылуы мүмкін.

Тиісті пайдалану

Төмен деңгейдегі бағдарламалауда, бос күтулер (busy waits) тіпті қажет болуы мүмкін. Әсіресе, сирек қолданылатын аппараттық құрылғылар үшін, әрбір құрылғыға үзіліс арқылы өңдеуді іске асыру ыңғайлы немесе мүмкін болмауы мүмкін. Кейде аппаратқа басқару деректерін жазу қажет, содан кейін жазу операциясынан туындаған құрылғының жағдайын алу керек, бұл жағдай жазудан кейін бірнеше машиналық циклдер өткен соң ғана жарамды болуы мүмкін. Бағдарламашы операциялық жүйенің кідіру функциясын шақыруы мүмкін, бірақ мұндай жағдайда құрылғының жағдайын күтіп, бірнеше сағаттық циклдарды орындауға кеткен уақыттан да көп уақыт жұмсалуы мүмкін.