Múltiples Gorrutinas

Prerrequisito: Múltiples Goroutines Una Goroutine es una función o método que se ejecuta de forma independiente y simultánea en conexión con cualquier otra Goroutine presente en su programa. O, en otras palabras, cada actividad que se ejecuta simultáneamente en el lenguaje Go se conoce como Goroutines. En el lenguaje Go, puede crear varias rutinas en un solo programa. Puede crear una gorutina simplemente usando la palabra clave go como prefijo de la función o llamada al método, como se muestra en la siguiente sintaxis:

func name(){

// statements
}

// using go keyword as the 
// prefix of your function call
go name()

Ahora discutimos cómo crear y trabajar en múltiples gorutinas con la ayuda de un ejemplo: 

C

// Go program to illustrate Multiple Goroutines
package main
 
import (
    "fmt"
    "time"
)
 
// For goroutine 1
func Aname() {
 
    arr1 := [4]string{"Rohit", "Suman", "Aman", "Ria"}
 
    for t1 := 0; t1 <= 3; t1++ {
     
        time.Sleep(150 * time.Millisecond)
        fmt.Printf("%s\n", arr1[t1])
    }
}
 
// For goroutine 2
func Aid() {
 
    arr2 := [4]int{300, 301, 302, 303}
     
    for t2 := 0; t2 <= 3; t2++ {
     
        time.Sleep(500 * time.Millisecond)
        fmt.Printf("%d\n", arr2[t2])
    }
}
 
// Main function
func main() {
 
    fmt.Println("!...Main Go-routine Start...!")
 
    // calling Goroutine 1
    go Aname()
 
    // calling Goroutine 2
    go Aid()
 
    time.Sleep(3500 * time.Millisecond)
    fmt.Println("\n!...Main Go-routine End...!")
}

Producción:

!...Main Go-routine Start...!
Rohit
Suman
Aman
300
Ria
301
302
303

!...Main Go-routine End...!

Creación: en el ejemplo anterior, tenemos dos rutinas principales además de la rutina principal, es decir, Aname y Aid . Aquí Aname imprime el nombre de los autores y Aid imprime el id de los autores. Trabajando: Aquí, tenemos dos goroutines, es decir, Aname y Aid y un goroutine principal. Cuando ejecutamos este programa primero, la gorutina principal comienza e imprime “!…Main Go-routine Start…!”, aquí la gorutina principal es como un padre y otras gorutinas son sus hijos, por lo que la primera gorutina principal se ejecuta después de que esas otras gorutinas comiencen y si la rutina principal termina, también se terminan otras rutinas. Entonces, después de la rutina principal, Anamey las rutinas de ayuda comienzan a funcionar al mismo tiempo. La rutina de Aname comienza a funcionar desde 150ms y Aid comienza a funcionar desde 500ms como se muestra en la siguiente imagen:

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *