Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   duda sobre thread (https://www.clubdelphi.com/foros/showthread.php?t=56572)

cascarrabias 21-05-2008 04:12:23

duda sobre thread
 
Buen dia, probe haciendo un ejemplo sencillisimo de thread donde la estructura es asi:

Código Delphi [-]
...
 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:

Código Delphi [-]
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?" 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


La franja horaria es GMT +2. Ahora son las 18:57:33.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi