Fórum Parametro no execute de uma thread #278885
26/04/2005
0
Por Exemplo
MinhaThread = class(TThread)
procedure execute(NumInner : Integer; Cod_Barra:string); override;
Possuo uma unit com varios procedimentos de verificacao de dados de catracas eletronicas
Essas verificacaoes sao feitas atraves de threads, precisava de passar alguns parametros no metodo execute
Por exemplo Catraca Modelo RodBel Eu chamaria o metodo execute da thread q esta na Unit chamada MODELORODBEL, passando os parametros necessario para verificar os dados
Do jeito que eu fiz esta funcionando. So que os dados sao preenchidos em variaveis na Unit Principal do programa e as Units que possuem as thread leem essas variaveis
Se alguem tiver alguma dica ....
Valeu !!!!
Colerapunk
Curtir tópico
+ 0Post mais votado
26/04/2005
Do modo como você escreveu...
Massuda
Gostei + 1
Mais Posts
26/04/2005
Massuda
type TMinhaThread = class(TThread) ... protected procedure Execute; override; public Valor1: Integer; Valor2: string; ... end; .... procedure TMinhaThread.Execute; begin ... // usa Valor1, Valor2 ... end; // exemplo de uso da thread var Thread: TMinhaThread; ... Thread := TMinhaThread.Create( True); Thread.Valor1 := ... Thread.Valor2 := ... Thread.Resume; ...
Gostei + 1
26/04/2005
Colerapunk
UNIT PRINCIPAL
..........................
ThreadTopData.valor1 := 1;
ThreadTopData.valor2 := ´125´;
ThreadTopData.execute(false);
..........................
UNIT INDIVIDUAL DA CATRACA
..................................................
procedure ThreadTopData.execute;
begin
VerificaDados(VALOR1, VALOR2);
FreeOnTerminate := True;
end;
....................................................
Antes de chamar o metodo execute precisava de preencher as variaveis.
Teria Como fazer isso?
Gostei + 0
26/04/2005
Kapak
1-Cria a thread suspensa.
2-Passa os valores.
3-Ativa a execução da thread.
Gostei + 0
26/04/2005
Colerapunk
Ainda bem q vc me avisou que eu estava fazendo errado, como havia falado o sistema tem q contrlar varias catracas ao mesmo tempo... na verdade funcionou, mas eu havia testado apenas controlando uma catraca.
Vou mudar e fazer do jeito q vc me disse
Valeu d+ pela ajuda
Gostei + 0
05/05/2018
Fabio Albuquerque
<br /><br />
<br />
Thread th = new Thread(() => processaCep(i.ToString()));<br /><br />
th.Start();<br />
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)