• Sábado 20 de Abril de 2024, 03:32

Autor Tema:  Hilos en C#  (Leído 3779 veces)

spiderjerusalem

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Hilos en C#
« en: Miércoles 8 de Julio de 2009, 18:28 »
0
Buenas.

Tengo que hacer un programa .exe y una libreria de clases .dll en C#.

El .exe es un formulario en el cual cuando pulsas los botones, se llaman a diferentes métodos de la libreria. Estos métodos controlan la comunicación con un microchip. Por lo tanto, lo que debo hacer es manejar toda esa comunicación en un thread, para que no haya bloqueo mientras se mandan y/o reciben datos desde el microchip.

El tema es que no se como hacer esto. Tengo entendido el tema de threads y de delegados y demas, pero no se de que forma trabajar con las llamadas a métodos en un hilo secundario. ¿Debería iniciar un hilo en el programa principal? Como funcionaria para que al hacer las llamadas a los métodos estos funcionen en el hilo secundario?

No se si solo con esa información me podeis ayudar, si necesitais que sea mas específico hacedmelo saber, pero basicamente es eso lo que necesito.

Muchas gracias por adelantado, un saludo ;)

spiderjerusalem

  • Nuevo Miembro
  • *
  • Mensajes: 7
    • Ver Perfil
Re: Hilos en C#
« Respuesta #1 en: Jueves 16 de Julio de 2009, 14:31 »
0
Por favor a ver si me echais un cable que es importante.. al menos algun apunte que me encamine en la direccion adecuada ;)

TatoAG

  • Nuevo Miembro
  • *
  • Mensajes: 5
    • Ver Perfil
Re: Hilos en C#
« Respuesta #2 en: Viernes 31 de Julio de 2009, 08:48 »
0
public void TuHilo()
{
    while (true)
    {
        // Cosas a hacer
    }
}

Ahora desde donde quieras inicializas el hilo:
Thread hiloPrincipal = new Thread();
Thread.Start(TuHilo);

JuanK

  • Miembro de ORO
  • ******
  • Mensajes: 5393
  • Nacionalidad: co
    • Ver Perfil
    • http://juank.io
Re: Hilos en C#
« Respuesta #3 en: Jueves 13 de Agosto de 2009, 16:36 »
0
Esta información te sera de mucha ayuda:

http://msdn.microsoft.com/es-es/library ... 80%29.aspx

una vez entiendas lo fundamental pégale una mirada a la clase BackGroundWorker que te simplificara el trabajo en la mayoría de los casos sencillos.

http://basicshabaj.blogspot.com/2007/01 ... -in-c.html
[size=109]Juan Carlos Ruiz Pacheco
[/size]
Microsoft Technical Evangelist
@JuanKRuiz
http://juank.io