Concurrencia en C# (.NET): Programación asíncrona y paralela
Concurrencia en C# (.NET): Programación asíncrona y paralela
Resumen:
Las aplicaciones modernas requieren alto rendimiento y capacidad de respuesta. El libro «Concurrencia en C# (.NET)» es una guía completa sobre programación asíncrona, paralela y multihilo en la plataforma .NET. Aprenderá a escribir código eficiente, seguro y escalable que aproveche al máximo las capacidades de los procesadores multinúcleo modernos.
¿De qué trata este libro?
El libro cubre todos los aspectos clave de la programación concurrente en C#:
- Fundamentos de multihilo: creación y gestión de hilos, grupos de hilos, sincronización.
- Programación asíncrona con async/await: inmersión profunda en el modelo de tareas, contexto de sincronización, manejo de errores y cancelación de operaciones.
- Task Parallel Library (TPL): bucles paralelos (Parallel.For/ForEach), tareas (Task), agregación de resultados.
- Sincronización y bloqueos: lock, Monitor, Semaphore, Mutex, ReaderWriterLockSlim, así como primitivas modernas (Barrier, CountdownEvent).
- Colecciones paralelas: ConcurrentDictionary, ConcurrentQueue, BlockingCollection y su aplicación.
- Patrones de concurrencia: Productor-Consumidor, Pipeline, MapReduce, modelos tipo Actor.
- Depuración y perfilado: herramientas para encontrar deadlocks, race conditions y fugas de recursos.
¿Para quién es este libro?
El libro está dirigido a desarrolladores .NET de cualquier nivel que quieran:
- Entender cómo funciona la asincronía internamente.
- Evitar errores típicos (deadlock, race condition, thread starvation).
- Aumentar el rendimiento de sus aplicaciones.
- Dominar enfoques modernos de concurrencia en .NET 8/9.
Para leerlo basta con un conocimiento básico de C# y .NET. Todos los conceptos se explican de lo simple a lo complejo con numerosos ejemplos prácticos.
¿Qué aprenderá?
- Cómo usar correctamente async/await en aplicaciones web, de escritorio y servicios.
- Cuál es la diferencia entre asincronía y paralelismo.
- Cómo diseñar clases seguras para hilos.
- Cómo trabajar eficientemente con operaciones I/O-bound y CPU-bound.
- Cómo usar canales (Channels) para transferir datos entre hilos.
- Cómo aplicar extensiones reactivas (Rx.NET) para escenarios asíncronos complejos.
El libro contiene más de 50 ejemplos prácticos, listos para usar en proyectos reales. Obtendrá no solo teoría, sino también recetas probadas para resolver problemas cotidianos.
¡Domine la concurrencia en C# y haga sus aplicaciones más rápidas, fiables y escalables!