[firebase-br] Timer em UDF
    Carlos H. Cantu 
    listas em warmboot.com.br
       
    Ter Abr 12 14:41:07 -03 2005
    
    
  
Não faça isso! Quando uma UDF é chamada, o servidor fica esperando o
resultado dela para continuar o processamento. Colocar um timer dentro
de uma UDF é pedir pra ter dor de cabeça.
[]s
Cantu
http://www.warmboot.com.br
FireBase - http://www.FireBase.com.br
AT> Ola amigos...
AT> Estava tentando colocar um TIMER dentro de uma UDF para
AT> realizar algumas operacoes independente de uma chamada às funções
AT> da UDF. Qual não foi a minha surpresa ao perceber que o timer
AT> simplesmente não dispara.... 
AT> O código ficou mais ou menos assim:
AT> type
AT>  TMeuTimer = class(TComponent)
AT>   private
AT>     Timer: TTimer;
AT>     procedure OnTimer(Sender: TObject);
AT>   public
AT>     constructor Create(AOwner: TComponent); override;
AT>     destructor Destroy; override;
AT>   end;  
AT> var
AT>   MeuTimer : TMeuTimer;
AT> constructor TMeuTimer.Create(AOwner: TComponent);
AT> begin
AT>   inherited Create(AOwner);
AT>   Timer          := TTimer.Create(Self);
AT>   Timer.OnTimer  := OnTimer;
AT>   Timer.Interval := 3000;
AT>   Timer.Enabled  := True; 
AT> end;
AT> destructor TMeuTimer.Destroy;
AT> begin
AT>   Timer.Free;
AT>   Timer := nil;
AT>   inherited Destroy;
AT> end;
AT> procedure TMeuTimer.OnTimer(Sender: TObject);
AT> begin
AT>   DeleteFile('C:\Temp.txt');
AT> end;
AT> initialization
AT>   MeuTimer := TMeuTimer.Create(nil);
AT> finalization
AT>   MeuTimer.Free;
AT>   MeuTimer := nil;
AT> O interessante, é que tenho certeza de que a classe está
AT> sendo criada, mas o timer não dispara, como se o FIREBIRD não
AT> permitisse THREADs em UDFs.... 
AT> Alguém já tentou fazer algo do tipo?
AT> []'s
AT> Alexandre Trindade
AT> Analista de Sistemas
AT> ______________________________________________
AT> FireBase-BR (www.firebase.com.br) - Hospedado em www.bavs.com.br
AT> Para editar sua configuração na lista, use o endereço
AT> http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
AT> Para consultar mensagens antigas:
AT> http://search.gmane.org/search.php?groupirebase
    
    
Mais detalhes sobre a lista de discussão lista