En el siguiente ejemplo vamos a ver cómo crear un hilo que reciba dos números de tipo Int32 como parámetros y devuelva su suma.
Para ello implementaremos la siguiente clase:
class Suma
{
Int32 num1, num2, resultado;
public Suma(Int32 num1, Int32 num2)
{
this.num1 = num1;
this.num2 = num2;
}
public void sumar()
{
resultado = num1 + num2;
}
public Int32 getResultado()
{
return resultado;
}
}
{
Int32 num1, num2, resultado;
public Suma(Int32 num1, Int32 num2)
{
this.num1 = num1;
this.num2 = num2;
}
public void sumar()
{
resultado = num1 + num2;
}
public Int32 getResultado()
{
return resultado;
}
}
La clase Suma contiene tres variables de tipo Int32:
– num1 y num2, donde almacenará los números a sumar
– resultado, donde almacenará el resultado que podrá ser consultado a través del método getResultado()
Desde nuestro programa principal, utilizaremos el siguiente código para crear el hilo.
Supongamos que tenemos dos objetos de la clase TextBox:
– txtNum1 y txtNum2, donde el usuario introducirá los dos números a sumar
– txtResultado, donde se mostrará el resultado de la suma
Veámos el código:
Suma objeto_hilo = new Suma(Int32.Parse(txtNum1.Text), Int32.Parse(txtNum2.Text));
Thread hilo = new Thread(new ThreadStart(objeto_hilo.sumar));
hilo.Start();
hilo.Join();
txtResultado.Text = objeto_hilo.getResultado().ToString();
Thread hilo = new Thread(new ThreadStart(objeto_hilo.sumar));
hilo.Start();
hilo.Join();
txtResultado.Text = objeto_hilo.getResultado().ToString();