AGAG4
23-04-2005, 02:29:53
Aqui ando de nuevo, alguien sabe como liberar un Hilo????, lo creo de la siguiente manera:
//Declaracion en unidad aparte
TPeticion = class(TThread)
private
AvancePeti:Integer;
lEstatus:String;
protected
procedure Proceso;
procedure Execute; override;
end;
procedure TPeticion.Proceso;
begin
....
....
Transaccion.Commit;//Aqui se Cuelga la Aplicación
end;
procedure TPeticion.Execute;
begin
FreeOnTerminate:=true;
Proceso;//Llamar Proceso
end;
....
{En una Aplicación Creo el Hilo de la Siguiente Manera, para llamar el:
procedimiento PROCESO que esta dentro del Hilo}
procedure IniciaProceso ;
....
THiloPet:=TPeticion.Create(False);
....
end;
Pero cuando el Compilador llega a la línea de Commit dentro del procedimiendo "PROCESO" se CUELGA la Aplicación.....
No permiten en los hilos hacer procesos de Base de Datos, bien los componentes IBX no son recomendados en el uso de Hilos????
Agradezco cualquier sugerencia.
//Declaracion en unidad aparte
TPeticion = class(TThread)
private
AvancePeti:Integer;
lEstatus:String;
protected
procedure Proceso;
procedure Execute; override;
end;
procedure TPeticion.Proceso;
begin
....
....
Transaccion.Commit;//Aqui se Cuelga la Aplicación
end;
procedure TPeticion.Execute;
begin
FreeOnTerminate:=true;
Proceso;//Llamar Proceso
end;
....
{En una Aplicación Creo el Hilo de la Siguiente Manera, para llamar el:
procedimiento PROCESO que esta dentro del Hilo}
procedure IniciaProceso ;
....
THiloPet:=TPeticion.Create(False);
....
end;
Pero cuando el Compilador llega a la línea de Commit dentro del procedimiendo "PROCESO" se CUELGA la Aplicación.....
No permiten en los hilos hacer procesos de Base de Datos, bien los componentes IBX no son recomendados en el uso de Hilos????
Agradezco cualquier sugerencia.