Parâmetros em Threads

Delphi

15/04/2004

Bom dia

Hoje estive tentando usar Threads para gerenciar rotinas de exportação de Tabelas.
Tenho uma Unit (UniLibGeral), que contém as minha rotinas de exportação como segue :

procedure ExportaExcel(ACliDataSet : TDataSet; ATitulo, AFileName : String);
procedure ExportaWord (ACliDataSet : TDataSet; ATitulo, AFileName : String);
procedure ExportaHTML (ACliDataSet : TDataSet; ATitulo, AFileName : String);
procedure ExportaTXT (ACliDataSet : TDataSet; ATitulo, AFileName : String);

as Rotinas de exportação para Word e Excel são lentas, por isto gostaria de colocá-las em uma Thread.

Criei uma Thread (ThPrin), mas surgiu a dúvida na hora de passar os parâmetros, veja :

procedure thPrin.Execute;
begin
{ Place thread code here }
ExportaExcel(); <-----------------Como pegar estes parâmetros que vem do Form que chama o Relatório?
end;


Posso alterar o constructor do Execute para aceitar parâmetros? Como Fazê-lo?

Grato,
Moliva


Moliva

Moliva

Curtidas 0

Respostas

Comodelphi

Comodelphi

15/04/2004

na definicao do seu objeto thread adicione os atributos que vc necessita para passar como parametro:

type Minhathread(TThread)
Parametro1
.
.
Parametronnn

E redefina o métod create da trhread passando os valores para os atributos correspondentes da sua thread:

constructor Create(Parametro1....Parametronnnn);override;

não esqueça de usar o inherited na implementaçao, ai sua chamada a Trhead vai ficar
MinhaThread.Create(<Seus parametros>)


abcs....


GOSTEI 0
POSTAR