? Un cycle ou la boucle est un algorithme qui amène un ordinateur à répéter un ensemble d'instructions jusqu'à ce qu'une condition soit remplie . Parfois , un cycle est défini de telle sorte qu'il n'existe pas de condition de fonctionnement , ou bien il ne peut jamais être atteint. Une fois que le programme atteint cette séquence , ça coince dans cette boucle pour toujours ( ou, plus vraisemblablement , jusqu'à ce que l'ordinateur est réinitialisé ou le processus est interrompu ) . Lorsque cela se produit , le programme est dit avoir conclu un cycle infini . Exemple
un ordinateur donné la séquence d' instructions sera coincé dans une boucle infinie :
A = 0 ;
B = 0;
< p> alors que A < 10 {
B = +1;
}
En clair , le programme ci-dessus définit A et B à zéro , puis ne cesse d'augmenter B jusqu'à ce que A est égal à 10. C'est probablement une erreur de programmation , comme l'augmentation de la valeur de B ne peut absolument pas faire A égale à 10, et le programme est bloqué dans une boucle infinie .
Causes
erreurs conduisant à des cycles infinis sont fréquents chez les programmeurs débutants , qui peuvent oublier d'inclure une condition de terminaison pour une simple boucle ou peuvent involontairement rendre inaccessible. Les programmeurs expérimentés peuvent également créer des erreurs de boucle infinie , comme l'interaction de plusieurs programmes crée parfois des situations imprévues conduisant à des blocages ou autres formes de cycles infinis.
Conséquences
les conséquences de parvenir à un cycle infini varie en fonction de l'architecture du système d'exploitation. Dans les vieux ordinateurs , les cycles infinis peuvent potentiellement bloquer l'ensemble du système , affectant tous les utilisateurs. Dans les environnements plus modernes, multi-tâches du programme incriminé consomme les ressources disponibles, mais est forcé de revenir le contrôle au système d'exploitation de temps en temps , permettant ainsi l'utilisateur arrêt du processus de recyclage .
Intentionnelle utiliser
Bien que de nombreux cycles infinis sont parvenus par erreur , certains d'entre eux servent à des fins utiles . Par exemple , un ordinateur doit constamment surveiller les appareils pour la saisie ou de l'activité que s'il est éteint, et ce processus de surveillance constante peut être caractérisée comme une boucle infinie. Vieilles consoles de jeux vidéo sont souvent «coincés » dans un cycle infini trop , pour finalement revenir à l'écran titre après l'inévitable " game over. "