Múltiples hebras de ejecución en C#

Post date: Aug 27, 2010 4:47:29 AM

C# soporta la ejecución paralela de código a través del manejo de múltiples hebras de ejecución o threads. Una hebra soporta la ejecución paralela a través de la creación de múltiples hebras. Una hebra es una secuencia independiente de ejecución que puede correr simultáneamente con otras hebras.

Un programa en C# se inicia corriendo una hebra de ejecución creada automáticamente por el CLR y el sistema de operación (la clase principal). Una aplicación es multihebras al crear hebras adicionales. Vamos ahora a construir un ejemplo y su salida.

using System using System.Threading; class PruebaMultiHebras { static void Main() { Thread t = new Thread (WriteY); // Lanzar una nueva hebra t.Start(); // para ejecutar WriteY // Simultaneamente, realizar otras acciones // en la misma hebra. for (int i = 0; i < 1000; i++) Console.Write ("x"); } static void WriteY() { for (int i = 0; i < 1000; i++) Console.Write ("y"); } }

Una salida posible podría contener los símbolos "y" y "x" en cualquier orden.

xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxyyyyyyyyyyy yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy yyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyxxxxxxxxxxy yyyxxxxyyyyyyyyy...

La hebra principal crea una nueva hebra t en la que corre un método que imprime repetidamente el caracter “y”. Simultáneamente, el thread principal imprime repetidamente el caracter “x”.

Enlaces relacionados

Cursos relacionados