No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

No se trata de lo que quieres comprar, sino de quién quieres ser. Invierte en tu educación con el precio especial

Antes: $249

Currency
$209

Paga en 4 cuotas sin intereses

Paga en 4 cuotas sin intereses
Suscríbete

Termina en:

12 Días
9 Hrs
51 Min
10 Seg

¿Qué es la concurrencia?

26/36
Recursos

Aportes 23

Preguntas 0

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

En resumen:

Concurrencia te permite estar pendiente de varios procesos, comienzas uno, empiezas otro, ves si el anterior ya terminó, luego crear otro así

El paralelismo, es usar varios hilos del procesador para hacer varios procesos a la vez, pero siempre estas esperando que la tarea termine.

La concurrencia está alineando con múltiples cosas al mismo tiempo mientras que el paralelismo está haciendo múltiples cosas al mismo tiempo.

Concurrencia != Paralelismo

Les comparto un video donde explican muy bien la diferencia entre estos 2 terminos 😃
https://www.youtube.com/watch?v=mRn0exsKRCA

Sin duda alguno, no entendí la explicación.

Un ejemplo practico de la vida real puede ser:
Concurrencia: En un banco hay un solo cajero, la persona que esta haciendo su transacción, por algún motivo tiene que esperar por una aprobación, entonces lo hacen esperar a un lado mientras siguen atendiendo a los demás en la fila
Paralelismo: Resulta que en la otra sede de ese banco, hay 3 cajeros, entonces se van atendiendo de manera paralela.

Una forma de resumir el paralelismo y la concurrencia es esta:

Paralelismo: 3 filas para pagar y 3 cajas abiertas
Concurrencia: 3 filas para pagar y una caja abierta

Una manera interesante de ver alguno de los problemas con la concurrencia es con el uso de maps.
por ejemplo si ejecutamos el siguiente código:

package main

import "fmt"

func main() {
	m := make(map[string]int)

	m["1"] = 1
	m["2"] = 2
	m["3"] = 3
	m["4"] = 4
	m["5"] = 5
	m["6"] = 6
	m["7"] = 7
	m["8"] = 8
	m["9"] = 9
	m["10"] = 10

	for _, value := range m {
		fmt.Printf("%d\n", value)
	}
}

Van a haber momentos donde no se va a imprimir en orden correcto.

Este es un tema que de primera vista es complicado de asimilarlo, por eso les dejo una analogía que me ayudó a entender concurrencia cuando trabajaba con microprocesadores.

La concurrencia y el paralelismo no son exclusivos, en muchos casos siempre es una mezcla de ambas.
Les recomieno leer esta discusión sobre concurrencia y paralelismo, tiene ejemplos bastante claros que resolveran la mayoria de sus dudas.
https://qastack.mx/programming/1050222/what-is-the-difference-between-concurrency-and-parallelism

Imagino que la concurrencia aprovecha mas cada hilo, pues el mismo hilo se encarga de hacer muchas cosas y el paralelismo utiliza mas recursos.

Chequen este video, si no les quedo claro que es la concurrencia, yo entendí el concepto a los 3 minutos del video

Concunrrencia: Permite ejecutar múltiples tareas a la vez sin la necesidad de que estas terminen intercabiando de una a otra.

Paralelismo: De igual manera ejecuta varios procesos a la vez pero en este caso tiene que esperar a que una termine para poder continuar con la otra.

Por lo que entendi de la definicion es que concurrencia puede manejar varias peticiones en un solo input por ejemplo, mientras, paralelismo hace varias cosas en una sola instancia

Un buen artículo que habla precisamente de problemas con la concurrencia en Go:
https://www.golangprograms.com/go-language/concurrency.html

Les comparto estas slides de Rob Pike uno de los creadores de GO, estan buenisimas!. Pude entender en un instante la diferencia entre concurrencia y paralelismo.
https://go.dev/talks/2012/waza.slide#24

La explicación no es correcta. Los hilos de los nucleos de la CPUs se ejecutan en paralelo por cada ciclo de reloj.

https://stackoverflow.com/questions/1050222/what-is-the-difference-between-concurrency-and-parallelism Este hilo describe bastante bien las diferencias entre concurrencia y paralelismo también

Concurrency is not Parallelism by Rob Pike

https://www.youtube.com/watch?v=oV9rvDllKEg

Que manera tan genial de explicar la concurrencia jajaja

Lo mejor de Go

😂

Muy interesante todo esto