Dalam pemrograman komputer, sebuah **perulangan tak terhingga** (atau **perulangan tanpa akhir** atau **perulangan tak terbatas**)

adalah serangkaian instruksi, yang sebagaimana ketika dituliskan, akan terus berjalan tanpa henti, kecuali terjadi intervensi dari luar, seperti mematikan daya melalui saklar atau mencabut steker secara sengaja. Perulangan tak terhingga juga didefinisikan seabagai potongan kode yang tidak memiliki keluaran fungsional sehingga ia mengulang secara tak terbatas.

Ringkasan
---------

Perulangan tak terhingga berbeda dengan "tipe program komputer yang menjalankan instruksi yang sama secara terus-menerus hingga dihentikan atau mengalami gangguan". 
 
Pseudocode berikut menampilkan kode perulangan yang akan dijalankan secara terus-menerus hingga dihentikan atau terganggu.

```
berapa\_banyak = 0
while ada\_data\_lain() do
    berapa\_banyak = berapa\_banyak + 1
end
display "jumlah butir yang dihitung = "berapa\_banyak

```

Perintah *while* dalam kode tersebut mengartikan jika kondisi terpenuhi (*ada\_data\_lain*) maka perintah *do* akan dijalankan, dan perulangan akan terus berjalan selama kondisi terpenuhi (*TRUE*). Perulangan akan dihentikan jika terjadi pengembalian *FALSE* yang dilakukan fungsi *ada\_data\_lain*yang disebabkan kondisi tidak terpenuhi. 

Dengan demikian, kode berikut menampilkan bahwa perulangan tidak berhenti dengan sendirinya. 

```
burung = 1
ikan = 2
while burung + ikan > 1 do
    burung = 3 - burung
    ikan = 3 - ikan
end

```

Kode diatas menunjukkan bahwa nilai *burung* akan bergantian menjadi 1 atau 2, sementara nilai *ikan* akan bergantian menjadi 2 atau 1. Perulangan tidak akan berhenti kecuali ada intervensi eksternal (misal "menarik steker").

Detail
------

Perulangan tak terhingga merupakan serangkaian instruksi dalam sebuah program komputer yang berulang tanpa henti, baik dikarenakan perulangan tersebut tidak memiliki kondisi penghentian
, memiliki satu kondisi yang tidak pernah terpenuhi, atau hal yang menyebabkan perulangan memulai kembali. Pada sistem operasi lama dengan tugas ganda kooperatif, perulangan tak terbatas biasanya menyebabkan seluruh sistem menjadi tidak responsif. Dengan model *tugas ganda preemptive* yang pada saat ini umum dipakai, perulangan tak terhingga biasanya menyebabkan program menghabiskan seluruh waktu pemrosesan yang tersedia, namun pada umumnya proses ini dapat diakhiri oleh pengguna. Perulangan *busy waiting* juga disebut sebagai *perulangan tak terhingga*. Perulangan tak terhingga adalah salah satu penyebab kemungkinan sebuah komputer mengalami macet, deraan, kebuntuan, dan pelanggaran akses.

1. ↑  "Endless loop dictionary definition". Diakses tanggal 28 Maret 2024.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
2. ↑  "What is infinite loop (endless loop)". Diakses tanggal 28 Maret 2024.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
3. ↑  Caruso, Denise (August 16, 1999). "Overload of Hangers-On Creates Bumpy Ride for Internet Stocks". *The New York Times*. Diakses tanggal 28 Maret 2024.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
4. ↑  "Codes and Modes: The Character of Documentary Culture". *Flow Journal*. November 2014. Diakses tanggal 2024-03-28. sebuah loop tak terbatas adalah salah satu yang tidak memiliki...kondisi keluar.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)
5. ↑  juga dikenal sebagai *non-preemptive-multitasking*: "Non-preemptive Multitasking". *PC Magazine*. Diakses tanggal 28 Maret 2024.  Parameter `|url-status=` yang tidak diketahui akan diabaikan (bantuan)