In het programmeren van computers , een lus is een reeks instructies die een computer uitvoert een vast aantal keren . Een oneindige lus is een lus die eeuwig kan draaien tenzij een externe gebeurtenis zorgt ervoor dat de lus te beëindigen . Gelukkig zijn de meeste oneindige lussen doen eindigen . Echter, wanneer ze dat niet doen , kunnen zich problemen voordoen en een toepassing of de computer die het gastheren nadelig beïnvloeden . Trivia " Infinite Loop " is een straat die hoofdkantoor Apple Computer 's in Cupertino , Californië omringt . Elk van de zes gebouwen die deel uitmaken van het complex heeft een single-digit adres . Deze unieke combinatie van de computer term " Infinite Loop " en de single - digit adres structuur gebruikt door het bedrijf geeft Apple een officieel adres van " 1 Infinite Loop . " De zinsnede " Infinite Loop " is ook de titel van een boek van Michael Malone dat het begin van Apple Computer kronieken . Misvattingen Veel oneindige loops zijn niet echt oneindig . Op een gegeven moment , zal een proces te brengen tot stilstand . Dit proces kan de sluiting van een browser of het herstarten van een computer . Programmeurs soms verwijzen naar niet - oneindige lussen als oneindig . Een voorbeeld van een eindige oneindige lus een webpagina animatie . Met behulp van JavaScript , kan een ontwikkelaar een lus die een object beweegt elke paar seconden te creëren . De lus zou herhaaldelijk uitvoeren . Nochtans , kon het uiteindelijk beëindigen als de ontwikkelaar besluit om het programma te coderen , zodat de animatie stopt wanneer het object een vooraf gedefinieerde punt op het scherm bereikt . Coding De volgende verklaring illustreert hoe een ontwikkelaar een vaste lus in een programma : loopCounter = 0 ; loopLimit = 100 ; terwijl loopCounter minder dan loopLimitbegin ; ( iets te doen ) ; (voeg een tot loopCounter ) end ; Deze code zegt: " Terwijl de loopCounter ( 0 ) lager is dan de loopLimit ( 100 ) , iets doen . " De lus wordt 100 keer herhaald . Om een oneindige lus te maken , een ontwikkelaar zorgt ervoor dat de waarde van loopCounter nooit 100 . Hij kon dat doen door met uitzondering van de " (voeg een tot loopCounter ) " verklaring of door het vervangen van de " terwijl loopCounter is minder dan loopLimit " verklaring met " terwijl 1 is gelijk aan 1 . " Als een ontwikkelaar dat doet , de lus nooit zal eindigen , omdat men altijd gelijk een. Voorbeelden Timers en klokken op sommige webpagina's soms draaien binnen oneindige lussen . De lus begint wanneer een bezoeker wordt een pagina geopend en het gaat door tot de bezoeker de pagina verlaat . Sommige monitoring toepassingen vertrouwen op oneindige lus verwerking om een oogje houden op lokale of externe processen . Bijvoorbeeld , kon u een Windows- service applicatie die de gegevens ophaalt uit een webservice elk uur en slaat deze op in een database te creëren . Waarschuwingen Oneindige lussen zijn niet moeilijk maken . In feite , sommige ontwikkelaars maken ze onbedoeld . Wanneer dit gebeurt , desktop-en webgebaseerde applicaties kunnen lus continu , het consumeren van grote hoeveelheden systeembronnen . Het volgende is een voorbeeld van een veel voorkomende niet - oneindige lus gedefinieerd in een JavaScript-functie : var loopLimit = 100; for ( var i = 0 ; i < loopLimit ; i + + ) { //doe iets } < br > Deze lus zal " iets te doen " totdat het de door de variabele limiet heeft bereikt , " loopLimit . " In dit voorbeeld wordt de lus 100 keer draaien . Maar wat gebeurt er als de waarde van loopLimit wordt opgehoogd met een andere functie ? Als dat gebeurt, zou de lus nooit eindigen . Ontwikkelaars moeten zich bewust zijn van deze gemeenschappelijke programmeerfout . Andere onopzettelijke loops kan optreden als een ontwikkelaar vertrouwt op een aantal externe gebeurtenis, zoals een muisklik , aan de lus en die gebeurtenis niet gebeurt stoppen .
|