Hilos (Threads)
La clase Thread
en C# se utiliza para crear y controlar subprocesos. Un subproceso es una forma de ejecutar múltiples tareas simultáneamente en un programa. La clase Thread
se encuentra en el espacio de nombres System.Threading
.
Aquí hay un ejemplo de cómo se puede utilizar la clase Thread
para crear un subproceso:
using System;
using System.Threading;
public class Example
{
public static void Main()
{
Thread t = new Thread(new ThreadStart(DoWork));
t.Start();
}
public static void DoWork()
{
Console.WriteLine("Working...");
}
}
En este ejemplo, se crea un nuevo subproceso utilizando la clase Thread
. El subproceso se inicia utilizando el método Start
y ejecuta el método DoWork
.
La clase Thread
también proporciona otros métodos y propiedades útiles para controlar el subproceso, como Join
, Sleep
, Priority
, IsAlive
, Name
, etc.
Aquí hay otro ejemplo de cómo se puede utilizar la clase Thread
para crear varios subprocesos:
using System;
using System.Threading;
public class Example
{
public static void Main()
{
for (int i = 0; i < 5; i++)
{
Thread t = new Thread(new ParameterizedThreadStart(DoWork));
t.Start(i);
}
}
public static void DoWork(object data)
{
int id = (int)data;
Console.WriteLine("Working on task {0}...", id);
Thread.Sleep(1000);
Console.WriteLine("Task {0} complete.", id);
}
}
En este ejemplo, se crean cinco subprocesos utilizando la clase Thread
. Cada subproceso ejecuta el método DoWork
y se le pasa un argumento entero que representa el identificador del subproceso. El método DoWork
realiza una tarea y luego espera un segundo antes de completar la tarea.