Não sei se estou ajudando em alguma coisa, mas pra que serve a linha
FreeOnTerminate := True; ? Não seria isso?
Bom, se não for, desculpe minha ignorância e por favor me diga a função disso.
Obrigado.
Atenciosamente,
--
Thiago de Oliveira Quinelato.
Aluno do 4º Módulo do Curso Técnico de Informática Industrial - CTU/UFJF.
Aluno da 3ª série "A" do Ensino Médio - CTU/UFJF.
Programador de Pascal, Delphi, PHP, Java e MySQL, com conceitos da linguagem C.


Em 11/10/05, fabiano_monteiro2000<[EMAIL PROTECTED]> escreveu:

>  Prezados Amigos,
>
>  Tudo bem?
>
>  Tenho que desenvolver uma aplicação que receberá vários
>  bloco de 2kb
>  através de uma porta específica. Acontece que estes blocos
>  são da
>  ordem de milhões/hora e a única forma que imaginei seria, a
>  cada bloco
>  que eu receber na porta que estou escutando (uso delphi 4 e com o
>  componente TServerSocket), pensei em armazenar em um arquivo
>  binário
>  em um diretório específico.
>
>  Uma outra aplicação estará full time pesquisando este
>  diretório
>  verificando a existência dos arquivos. Existindo, irá lê-los,
>  processá-los e apagá-los.
>
>  Consegui simular a chegada dos blocos de 2k sendo que estou usando
>  threads para isso, tendo em vista a imensa quantidade que terei de
>  gravar o tempo todo e não posso (de jeito nenhum) perder nenhum
>  bloco
>  destes que receber. Acho que até aí está correto não ? :)
>
>  Bom, quando a thread é chamada, reparei que ela cria uma
>  instãncia no
>  gerenciador de tarefas, e várias ao mesmo tempo. Queria ter
>  certeza de
>  liberar a memória após a gravação de cada arquivo,
>  desafogando a máquina.
>
>  Eu chamo a thread assim:
>    GeraArquivo := TGravaArquivo.Cria(Socket.ReceiveText);
>
>  Segue o código da thread:
>
>  unit UThreadGravaArquivo;
>
>  interface
>
>  uses
>    Classes, SysUtils ;
>
>  type
>    TGravaArquivo = class(TThread)
>    private
>      { Private declarations }
>      vMeuConteudo : String;
>      F : TextFile;
>    protected
>      procedure Execute; override;
>      procedure Processo;
>    public
>      constructor Cria(vConteudo: String);
>    end;
>
>  Const
>       caminho_App = 'D:\Pulse\Pulse_Desktop\unread\';
>
>  implementation
>
>  { Important: Methods and properties of objects in VCL can only be used
>  in a
>    method called using Synchronize, for example,
>
>        Synchronize(UpdateCaption);
>
>    and UpdateCaption could look like,
>
>      procedure TGravaArquivo.UpdateCaption;
>      begin
>        Form1.Caption := 'Updated in a thread';
>      end; }
>
>  { TGravaArquivo }
>
>  constructor TGravaArquivo.Cria(vConteudo: String);
>  begin
>      Create(False);
>      vMeuConteudo := vConteudo;
>      FreeOnTerminate := True;
>  end;
>
>  procedure TGravaArquivo.Execute;
>  begin
>       Synchronize(Processo);
>  end;
>
>  procedure TGravaArquivo.Processo;
>  var
>    Year, Month, Day, Hour, Min, Sec, MSec: Word;
>    varq: string;
>  begin
>    DecodeDate(Now, Year, Month, Day);
>    DecodeTime(Now, Hour, Min, Sec, MSec);
>    varq := 'cdr_' + IntToStr(Day) + IntToStr(Month) + IntToStr(Year)+
>  IntToStr(Hour) + IntToStr(Min) + IntToStr(Sec) +IntToStr(Msec) +
>  '.cdr';
>    try
>       if not FileExists(caminho_App + varq) then
>       begin
>           AssignFile(f, (caminho_App + varq) );
>           Rewrite(f);
>       end;
>      Write(f,vMeuConteudo);
>      CloseFile(f);
>      except
>           raise;
>    end;
>
>  end;
>
>  end.
>
>  Desde já agradeço a atenção dispensada.
>
>  Atenciosamente,
>
>  Fabiano Monteiro
>
>
>
>
>  --
>  <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>
>
>  Para ver as mensagens antigas, acesse:
>  http://br.groups.yahoo.com/group/delphi-br/messages
>
>  Para falar com o moderador, envie um e-mail para:
>  [EMAIL PROTECTED] ou
> [EMAIL PROTECTED]
>
>
>
>
>  Yahoo! Grupos, um serviço oferecido por:
>
>  ________________________________
>  Links do Yahoo! Grupos
>
>
> Para visitar o site do seu grupo na web, acesse:
> http://br.groups.yahoo.com/group/delphi-br/
>
> Para sair deste grupo, envie um e-mail para:
> [EMAIL PROTECTED]
>
> O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do
> Yahoo!.


-- 
<<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>>

Para ver as mensagens antigas, acesse:
 http://br.groups.yahoo.com/group/delphi-br/messages

Para falar com o moderador, envie um e-mail para:
 [EMAIL PROTECTED] ou [EMAIL PROTECTED]
 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/delphi-br/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 




Responder a