Бесконечный цикл в программировании — это ситуация, когда в цикле нет условия для выхода, и подпрограмма внутри него повторяется бесконечно. 1 Чаще всего бесконечным становится цикл while, но таким можно сделать и цикл for, например, если не менять итератор или установить невозможное условие для выхода. 1
Бесконечные циклы могут привести к неблагоприятным последствиям для производительности, оперативности и удобства использования программного приложения или системы. 3 Эти эффекты могут проявляться в виде медленного пользовательского интерфейса, сбоев приложений, перегрева или, в худшем случае, потенциальных атак типа «отказ в обслуживании» (DoS). 3
Чтобы избежать возникновения бесконечного цикла, следует внимательно следить за условием, при котором цикл будет завершаться. 4 В большинстве случаев бесконечные циклы появляются из-за логических ошибок программиста. 4
Однако есть ситуации, когда бесконечное повторение — штатный режим работы. 1 Например, программа в бесконечном цикле раз в несколько миллисекунд обновляет изображение на экране — это закончится, только если выйти из неё. 1 В таких случаях разработчикам важно обеспечить наличие достаточных мер безопасности и механизмов обработки ошибок, чтобы цикл не потреблял чрезмерных ресурсов или не вызывал зависания приложения. 3