Hvad er en go rutine?
Hvad er en go rutine?

Video: Hvad er en go rutine?

Video: Hvad er en go rutine?
Video: God hudplejerutine til alle | SKØNHEDSLABORATORIET 2024, Kan
Anonim

Goroutiner er funktioner eller metoder, der kører sideløbende med andre funktioner eller metoder. Goroutiner kan opfattes som letvægtstråde. Omkostningerne ved at oprette en Goroutine er lille sammenlignet med en tråd. Derfor er det almindeligt for Gå applikationer til at have tusindvis af Goroutiner kørende samtidigt.

Heri, hvad er en kanal i gang?

I Gå sprog, a kanal er et medium, hvorigennem en goroutine kommunikerer med en anden goroutine, og denne kommunikation er låsefri. Eller med andre ord, a kanal er en teknik, der gør det muligt at lade en goroutine sende data til en anden goroutine.

Desuden, hvor mange Goroutiner kan køre på én gang? På en maskine med 4 GB installeret hukommelse begrænser dette det maksimale antal goroutiner til lidt under 1 mio. Det er praktisk at skabe hundredtusindvis af goroutiner i samme adresseområde.

Derfor, hvordan bruger du en Goroutine?

For at aktivere denne funktion i en goroutine , brug gå f(s). Denne nye goroutine udføres samtidig med den kaldende. Du kan også starte en goroutine for et anonymt funktionsopkald. Vores to funktionskald kører asynkront hver for sig goroutiner nu.

Kan en Goroutine returnere en værdi?

Løb goroutine (asynkront) og hente returværdi fra funktion er i det væsentlige modstridende handlinger. Men når du tildeler funktion returværdi til en variabel, du forventer at have denne værdi inden for variablen. Så når du gør det x:= go doSomething(arg) siger du: Fortsæt, vent ikke på funktionen!

Anbefalede: