Che cosa è un ciclo infinito?

May 6

Un ciclo o loop è un algoritmo che causa un computer per ripetere una serie di istruzioni finché una condizione è soddisfatta. A volte, un ciclo è definita in modo tale che non vi è alcuna condizione operativa, oppure può non essere soddisfatta. Una volta che il programma raggiunge quella sequenza, si blocca in quel ciclo sempre (o, più probabilmente, finché il computer viene resettata o il processo è interrotto). Quando ciò accade, il programma si dice che sono entrato in un ciclo infinito.

Esempio

Un computer data la seguente sequenza di istruzioni viene bloccata da un ciclo infinito:

A = 0;

B = 0;

Mentre A <10 {

B = B+1;

}

In parole povere, il programma di cui sopra imposta A e B a zero, e poi continua ad aumentare B fino a quando A è uguale a 10. Questo è probabilmente un errore di programmazione, come l'aumento del valore di B non può assolutamente fare una uguale a 10, e il programma ottiene bloccato in un ciclo infinito.

Le cause

Gli errori che portano a cicli infiniti sono comuni tra i programmatori alle prime armi, che possono dimenticare di includere una condizione di terminazione per un semplice loop o possono involontariamente rendere irraggiungibile. I programmatori esperti possono anche creare errori di loop infinito, come l'interazione di più programmi a volte crea situazioni impreviste che portano a situazioni di stallo o altre forme di cicli infiniti.

conseguenze

Le conseguenze di raggiungere un ciclo infinito varia a seconda dell'architettura del sistema operativo. Nel computer più vecchi, i cicli infiniti possono potenzialmente bloccare l'intero sistema, che interessa tutti gli utenti. In più moderno, multitasking ambienti il ​​programma incriminato consuma le risorse disponibili, ma è costretta a ritornare il controllo al sistema operativo di volta in volta, permettendo così all'utente di terminazione del processo ciclismo.

uso intenzionale

Sebbene molti cicli infiniti sono ottenuti in errore, alcuni di essi hanno uno scopo utile. Per esempio, un computer deve monitorare costantemente i dispositivi per l'ingresso o l'attività a meno che non sia spento, e questo processo di monitoraggio costante può essere caratterizzato come un ciclo infinito. I vecchi console per videogame erano spesso "bloccati" in un ciclo infinito troppo, alla fine tornare alla schermata dei titoli dopo l'inevitabile "game over".