# Patrones de concurrencia (Go) > Worker pools, pipelines, fan-out/fan-in, cancelación, context, errgroup, semáforos - 24 preguntas de entrevista - Mid-Level - [Preguntas de entrevista: Go](https://sharpskill.dev/es/technologies/go/preguntas-entrevista.md) ## 1. ¿Qué es un worker pool en Go? **Respuesta** Un worker pool es un patrón de concurrencia que utiliza un número fijo de goroutines (workers) para procesar tareas provenientes de un canal compartido. Este patrón permite limitar el número de goroutines activas y controlar el consumo de recursos del sistema. A diferencia de crear una goroutine por tarea, el worker pool reutiliza un conjunto de workers para procesar un gran volumen de tareas de manera eficiente. ## 2. ¿Cuál es la principal ventaja de usar un worker pool en lugar de crear una goroutine por tarea? **Respuesta** Limitar el número de goroutines activas permite controlar el consumo de recursos del sistema (memoria y CPU) y evitar la sobrecarga. Crear una goroutine por tarea puede generar miles o millones de goroutines simultáneas, saturando el scheduler y agotando la memoria. El worker pool mantiene un número óptimo de workers que procesan las tareas secuencialmente, garantizando un rendimiento predecible incluso bajo carga alta. ## 3. ¿Qué es un pipeline en el contexto de la concurrencia en Go? **Respuesta** Un pipeline es una serie de etapas conectadas por canales, donde cada etapa es un grupo de goroutines que ejecutan la misma función. Cada etapa recibe datos a través de canales de entrada, realiza un procesamiento y luego envía los resultados a través de canales de salida. Este patrón permite descomponer procesamientos complejos en etapas simples y reutilizables, facilitando la composición y la prueba de cada componente de forma independiente. ## 21 preguntas más disponibles - ¿Cómo cerrar correctamente un canal en un worker pool para señalar el fin del procesamiento? - ¿Cuál es la diferencia entre fan-out y fan-in? Regístrate gratis: https://sharpskill.dev/es/login ## Otros temas de entrevista Go - [Fundamentos de Go](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/go-basics.md): 25 preguntas, Junior - [Estructuras de datos en Go](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/go-data-structures.md): 20 preguntas, Junior - [Interfaces en Go](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/go-interfaces.md): 18 preguntas, Junior - [Manejo de errores](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/error-handling.md): 20 preguntas, Junior - [Goroutines básicas](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/goroutines-basics.md): 20 preguntas, Junior - [Channels](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/channels.md): 22 preguntas, Junior - [Go Modules](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/go-modules.md): 18 preguntas, Mid-Level - [Servidor HTTP](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/http-server.md): 24 preguntas, Mid-Level - [Cliente HTTP](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/http-client.md): 18 preguntas, Mid-Level - [Codificación JSON](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/json-encoding.md): 20 preguntas, Mid-Level - [Database/SQL](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/database-sql.md): 22 preguntas, Mid-Level - [Paquete context](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/context-package.md): 20 preguntas, Mid-Level - [Testing](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/testing.md): 22 preguntas, Mid-Level - [Primitivas de sincronización](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/sync-primitives.md): 22 preguntas, Mid-Level - [Frameworks web de Go](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/go-web-frameworks.md): 20 preguntas, Mid-Level - [Diseño de API REST](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/rest-api-design.md): 20 preguntas, Mid-Level - [gRPC](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/grpc.md): 22 preguntas, Mid-Level - [Reflection](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/reflection.md): 20 preguntas, Senior - [Gestión de memoria](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/memory-management.md): 24 preguntas, Senior - [Optimización del rendimiento](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/performance-optimization.md): 22 preguntas, Senior - [Generics](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/generics.md): 20 preguntas, Senior - [Go Design Patterns](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/design-patterns.md): 24 preguntas, Senior - [Microservices](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/microservices.md): 24 preguntas, Senior - [Seguridad y autenticación](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/security-authentication.md): 24 preguntas, Senior - [Docker & Containerization](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/docker-containerization.md): 20 preguntas, Senior - [Kubernetes Basics](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/kubernetes-basics.md): 22 preguntas, Senior - [Go Avanzado](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/advanced-go.md): 20 preguntas, Senior - [Desarrollo de CLI](https://sharpskill.dev/es/technologies/go/preguntas-entrevista/cli-development.md): 20 preguntas, Senior --- Source: SharpSkill (https://sharpskill.dev), tech interview preparation for your real stack. HTML version of this page: https://sharpskill.dev/es/technologies/go/preguntas-entrevista/concurrency-patterns