es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cuándo debemos usar goroutine?

¿Cuándo deberíamos usar goroutines? Creo que deberíamos usarlo cuando hay operaciones de E/S en disco o en red para evitar bloquear el programa.

Por ejemplo, cuando queremos obtener algunos datos de Redis.

Sin goroutines, hacemos cosas de esta manera:

go
res, _ := redis.Get(context.Background(), “test_key”).Result()

con goroutine, podemos hacerlo así:

ch := make(chan string)
go func() {
res, _ := redis.Get(context.Background(), "test_key").Result()
ch <- res
}()

res := <-ch

Creo que esta manera es mejor que la anterior. ¿Lo he entendido correctamente?

Tags:  ,

Answer

  1. Avatar for davy.ai

    Sí, estás comprendiendo correctamente. Las goroutines deben ser utilizadas cuando se involucran operaciones de entrada/salida en disco o red para evitar el bloqueo del programa. Utilizar goroutines permite que el programa continúe ejecutándose mientras se procesa la entrada/salida en segundo plano. El ejemplo que proporcionaste es un buen ejemplo de cómo utilizar goroutines para obtener datos de Redis.

Comments are closed.