Golang | Gorutina vs Hilo

Goroutine: 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.

Hilo: Un proceso es una parte de un sistema operativo que es responsable de ejecutar una aplicación. Cada programa que se ejecuta en su sistema es un proceso y para ejecutar el código dentro de la aplicación, un proceso usa un término conocido como subproceso. Un hilo es un proceso ligero, o en otras palabras, un hilo es una unidad que ejecuta el código bajo el programa. Entonces, cada programa tiene lógica y un hilo es responsable de ejecutar esta lógica.

Estas son algunas de las diferencias entre Goroutine y Thread:

gorutina Hilo
Las gorutinas son administradas por el tiempo de ejecución go. Kernal administra los subprocesos del sistema operativo.
Goroutine no depende del hardware. Los subprocesos dependen del hardware.
Goroutines tiene un medio de comunicación fácil conocido como canal. El hilo no tiene un medio de comunicación fácil.
Debido a la presencia del canal, una gorutina puede comunicarse con otra gorutina con baja latencia. Debido a la falta de un medio de comunicación fácil, la comunicación entre subprocesos tiene lugar con una latencia alta.
Goroutine no tiene ID porque go no tiene almacenamiento local de subprocesos. Los subprocesos tienen su propia ID única porque tienen almacenamiento local de subprocesos.
Las rutinas Gor son más baratas que los hilos. El costo de los hilos es más alto que goroutine.
Se programan cooperativamente. Están programados de forma preventiva.
Han ayunado el tiempo de inicio que los hilos. Tienen un tiempo de inicio lento que goroutines.
Goroutine tiene pilas segmentadas crecientes. Los subprocesos no tienen pilas segmentadas en crecimiento.

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 *