? En cykel eller slinga är en algoritm som gör att en dator för att upprepa en uppsättning instruktioner tills ett villkor är uppfyllt . Ibland är en cykel definieras på ett sådant sätt att det inte finns något drifttillstånd , eller den kan aldrig uppfyllas. När programmet når den sekvensen , blir det fastnat i denna loop forever ( eller , mest troligt , tills datorn återställs eller processen avbryts ) . När det händer , är programmet sägs ha ingått ett oändligt kretslopp . Exempel
En dator med tanke på följande sekvens av instruktioner kommer att fastna i en oändlig loop :
A = 0 ;
B = 0 ;
Medan A < 10 {
B = B +1;
}
på ren svenska , sätter programmet ovan A och B till noll , och därefter fortsätter att öka B tills A är lika med 10 . Detta är troligen en programmering misstag , som att öka värdet på B omöjligen kan göra en lika med 10 , och programmet fastnar i en oändlig loop .
Orsaker
fel som leder till oändliga cykler är vanliga bland nybörjare programmerare, som kan glömma att inkludera en avslutande förutsättning för en enkel slinga eller kanske omedvetet göra det onåbara . Erfarna programmerare kan också skapa oändlig loop fel , eftersom samspelet mellan olika program ibland skapar oförutsedda situationer som leder till låsningar eller andra former av oändliga cykler .
Konsekvenser
konsekvenserna av att nå ett oändligt kretslopp varierar beroende på arkitektur i operativsystemet . I äldre datorer kan oändliga cykler frysa potentiellt hela systemet , som påverkar alla användare . I mer moderna , multi - tasking miljöer den felande programmet förbrukar de tillgängliga resurserna men tvingas att återgå kontrollen till operativsystemet från tid till annan , vilket gör att användaren uppsägning av cykling processen .
Avsiktligt använd
Även många oändliga cykler nås av misstag , en del av dem får en innebörd . Till exempel måste en dator övervakar ständigt anordningar för inmatning eller aktivitet om det inte är avstängd , och denna process av ständig övervakning kan karakteriseras som en oändlig loop . Gamla tv-spel konsoler var ofta " fastnar " i en oändlig cykel också, så småningom återvänder till titeln skärmen efter det oundvikliga " game over . " Addera