PDA

Ver la Versión Completa : duda sobre thread


cascarrabias
21-05-2008, 04:12:23
Buen dia, probe haciendo un ejemplo sencillisimo de thread donde la estructura es asi:


...
TMiThread = class(TThread)
protected
procedure Execute; override;
public
constructor Create;
end;
...

constructor TMiThread.Create;
begin
inherited Create(false o true);
FreeOnTerminate:= false o true;
end;

procedure TMiThread.Execute;
begin

//codigo a executar como hilo independiente

end;




El problema es que en mi aplicacion tengo un procedimiento donde lo llamo mandandole un variable y realiza varias operaciones, entre ellas esta el conectarse a postgreSQL y entonces quisiera meter este procedimiento como hilo independiente...el punto es que no se donde pongo mi procedimiento o como lo llamo para que sea un hilo independiente....mi procedimiento tiene la siguiente estructura:


procedure form1.ActGrid(Entity: TsgDXFEntity);


Entity es una entidad CAD la cual le mando....

espero haberme dado a entender!
Saludos!

Neftali [Germán.Estévez]
21-05-2008, 09:38:21
Antes de continuar, deberías revisar algo sobre Threads y Sincronización y sobre threads y conexión a Bases de Datos.
A veces la cosa no es tan sencilla como coger un procedimiento y colocarlo dentro de un Thread.

Para el tema de BD seguramente las conexiones y todo lo que necesites deberás crearlo dentro del Thread.

A parte, si estás utilizando cosas comunes al form principal, deberás utilizar métodos de sincronización.

Revisa este artículo titulado "How can I run queries in threads? (http://www.delphicorner.f9.co.uk/articles/db1.htm)" a ver qué te parece y si te aclara algunas cosas.

cascarrabias
21-05-2008, 20:02:20
Gracias Neftali, el enlace es muy bueno y util! Saludos