Capítulo 13. Programación

Este trabajo se ha traducido utilizando IA. Agradecemos tus opiniones y comentarios: translation-feedback@oreilly.com

Cuando ejecuta un trozo de código, tiene que ejecutarse en algún hilo en algún lugar. Un planificador es un objeto que decide dónde se ejecuta un determinado fragmento de código. Existen varios tipos de programadores en el marco .NET, y el código paralelo y el de flujo de datos los utilizan con ligeras diferencias.

I recomienda que no especifiques un programador siempre que sea posible; los valores por defecto suelen ser correctos. Por ejemplo, el operador await en código asíncrono reanudará automáticamente el método dentro del mismo contexto, a menos que anules este valor por defecto, como se describe en la Receta 2.7. Del mismo modo, el código reactivo tiene contextos predeterminados razonables para lanzar sus eventos, que puedes anular con ObserveOn, como se describe en la Receta 6.2.

Si necesitas que otro código se ejecute en un contexto específico (por ejemplo, un contexto de subproceso de interfaz de usuario o un contexto de solicitud ASP.NET), puedes utilizar las recetas de programación de este capítulo para controlar la programación de tu código.

13.1 Programar el trabajo en el pool de hilos

Problema

En tienes un fragmento de código que quieres ejecutar explícitamente en un hilo de threadpool.

Solución

La gran mayoría de las veces, querrás utilizar Task.Run, que es bastante sencillo. El siguiente código bloquea un hilo de threadpool ...

Get Libro de cocina de la concurrencia en C#, 2ª edición now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.