Ver Mensaje Individual
  #1 (permalink)  
Antiguo 02/11/2010, 02:05
des_trozado
 
Fecha de Ingreso: marzo-2009
Mensajes: 52
Antigüedad: 15 años, 1 mes
Puntos: 0
Sincronizacion de threads

Tengo una aplicacon, trabajando con sockets, que al iniciarse, pone un thread a esperar conexiones, cuando recibe una conexion, se crea una clase que tiene otro thread interno. Entonces, en el thread interno, recibe unos datos por el socket, que agrega a los atributos de esa clase, y desde el thread que recibia clientes, que esta en el Form, quiero agregar esos atributos a un DataGrid:

El problema, en cuanto crea la clase, se ejecuta la linea de que se agrege al dataGrid la clase, y aun no le han llegado los datos, asique como parche temporal he hecho un while(cliente.Nombre==""){} y asi, hasta que en el otro thread no le lleguen los datos y le agregue el valor se queda ahi.

Entonces mmmmm como deberia solucionarlo? en principio yo he pensado que deberia ser la clase, la que tu viera un metodo que al llegarle los datos los agregase al dataSource, pero desde la clase no puedo acceder al form, no se, aqui ya empiezo a perderme, igual deberia crear un metodo statico y publico para poder acceder desde el thread de la clase del cliente o no se, ¿alguna ayuda?

EDIT: Quizas se podria hacer un evento para que cuando cambien los valores de los atributos se llame a un metodo que actualiza el dataGrid?