Buenos días.
Estoy desarrollando un control personalizado. Este control es una grid
totalmente personalizada (la creo a base de dibujar las líneas, los
datos, etc...) y lo cierto es que me funciona muy bien.
El tema es que le he añadido un modo en el que si la consulta es muy
grande, por ejemplo, 100.000 registros de 55 campos tarda bastante,
como es lógico. Entonces añadí un proceso de carga mediante dos hilos
que se lanzan simultaneamente:
El primero realiza la carga de los n primeros datos y los "plancha" en
pantalla mientras el segundo hilo permanece cargando la totalidad de
los datos y, cuando los tiene, sustituye al primer "buffer" de datos
estando así todos los datos disponibles.
Esto me funciona de maravillas y nunca hay un parón visible al
usuario.
Ahora mi pregunta es: ¿Como puedo matar de forma segura a esos dos
hilos?
El código de las llamadas es este:
hilo1 = new Thread(this.CargaBufferTemporal);
hilo1.IsBackground = true;
hilo2 = new Thread(this.CargaBufferPrincipal);
hilo2.IsBackground = true;
hilo1.Start();
hilo2.Start();
Como siempre mil gracias por adelantado
Gonzalo Rodríguez Carrera
Leer las respuestas