Tema: Varios Hilos
Ver Mensaje Individual
  #1  
Antiguo 29-01-2014
Rockin Rockin is offline
Miembro
 
Registrado: may 2003
Ubicación: Málaga
Posts: 264
Reputación: 22
Rockin Va por buen camino
Varios Hilos

Buenas a todos, primero perdón porque no se si va en este apartado del foro mi pregunta.

Después de varios años porgramando, voy a empezar a usar Hilos de ejecución, ya he visto varias cosas en los trucos, foros, blogs y demás. Cuando es un hilo lo veo claro, pero tengo que hacer algo un poco más complejo.
Actualmente tengo una aplicación que calcula los tipos de ventas de unos agentes, sus horas, sus ratios, etc....
Son varias consultas, lo que hago actualmente es hacer la primera consulta StringGrid, luego la segunda, etc... al final cada resultado de las consultas se guarda en su celda de un StringGrid y añado una fila, y así con todos los agentes.

Me gustaría lanzar las consultas en varios hilos para acelerar el proceso, pero me surge la duda de como controlar que no escriba ni incremente la fila hasta que todas las consultas hayan terminado, son unas 20 consultas, cada una de su padre y de su madre unas a Firebird, otras a SQL en fin un lío.

A ver si de esta manera lo veis más claro
Código Delphi [-]
for i:= to num_agente do
begin

ventas:= CalcularVentas(nombre_agente);
horas:= CalcularHoras(nombre_agente);
ratios_venta:= CalcularRatioVenta(nombre_agente);

StringGrid[0,i]:= ventas;
StringGrid[1,i]:= horas;
StringGrid[2,i]:= ratios_venta;
StringGrid.rowcount := StringGrid.rowcount + 1;

end;

Querría lanzar las distintas consultas y que cuando estén todas finalizadas me rellene el grid y pase al siguiente agente.

No se si me he explicado bien, es algo lioso.

Gracias de antemano.
Responder Con Cita