Grunner til å skrive et Infinite Loop

En uendelig loop er en software programmering konstruksjon som utfører alltid. Hvis ikke skrevet riktig, kan det bare bli stanset ved å gjøre et system reset. Imidlertid kan en eller flere utgangs forholdene tillater en uendelig løkke til å avslutte med stil. De vanligvis skyldes kodefeil, for eksempel feil sløyfe gjennomføring forhold. Uendelige løkker er nødvendig i visse tilfeller, for eksempel programmer som må være tilgjengelig 24/7, stresstester og valg data kommunikasjonsporter.

fakta

Den generelle algoritme for en uendelig loop er som følger: do {sekvens av handlinger} while (alltid sant logisk uttrykk). Selv om selve syntaksen kan være forskjellig for Java, C ++ og andre programmeringsspråk, en av de vanligste konstruksjoner - for, gjør-stund, og mens - kan brukes til å implementere uendelige løkker. Utgangsbetingelser stoppe utførelsen av løkken, for eksempel når brukeren treffer en bestemt inngang nøkkel eller når programmet møter en bestemt verdi. For eksempel kan en enkel uendelig løkke med en pause betingelse skrives som følger:

while (true) {

get_name ("What is your name?", operator_name)
if operator_name = Null then break}

Dette løkke bruker en funksjon, get_name (), for å kontinuerlig be om et navn. Den angitte operatøren navn er lagret i variabelen, operator. Sløyfe pauser hvis operatøren ikke angi et navn og operator inneholder "Null", som betyr null.

24/7 Søknad

Uendelige løkker kan brukes i 24/7 applikasjoner. Eksempler er pengeautomater, web-baserte applikasjoner og virksomhetskritiske applikasjoner i sykehus og militære innstillinger. Noen av disse programmene bruker programvare og maskinvare avbrudd for å aktivere oppgaver, som er selvstendige programmer som utfører bestemte funksjoner. Imidlertid er uendelig løkke konstruksjoner med egnede break forhold også brukt. Den automatiserte teller machine operatør grensesnitt programvare, for eksempel, spør stadig kunden om han ønsker å utføre en annen handling: bare når kunden kommer inn "nei" betyr det stopp, returnere kortet og skrive transaksjonen posten.

Stress Testing

En uendelig løkke kan brukes til å understreke teste programvare og maskinvare applikasjoner. Stresstesting innebærer driftsenheter gjennom flere iterasjoner og i værharde omgivelser for å se etter sårbarheter. For eksempel kan en uendelig løkke sjekke om et program krasjer etter et visst antall gjentakelser. En uendelig løkke kan også være involvert i stresstesting gjentatte bruk av taster og kontroller på operatør inndataenheter, for eksempel mobiltelefoner og tastatur.

Polling

Uendelige løkker kan komme godt med for polling input / output kommunikasjonsporter på datamaskiner og instrumentering enheter. Selv om noe av dette kan gjøres ved hjelp av avbrudd, hvor et signal fra havnen forteller operativsystemet at data som venter på å bli mottatt eller overføres, kan programmerere også skrive uendelige løkker å utføre disse oppgavene. For eksempel vil en uendelig løkke som aktiverer hver så ofte kan sjekke alle input / output porter på en overvåkingsenhet for data, og deretter gå i dvale slik at det ikke forbruke overflødig prosessorkapasitet.