[firebase-br] SP travando

Kelver Merlotti kmerlotti em gmail.com
Seg Set 22 15:20:12 -03 2008


Fala galera, boa tarde!

Procurei na net e não achei nenhuma SP pra executar um "sleep" no
banco (tipo o do delphi mesmo)..

Daí resolvi montar minha própria procedure Sleep.. MAS, há algo de
errado no paraíso.. se depuro ela pelo IBExpert, funfa normalz.. mas
quando dou o "select * from myslee(2000)" o FB vai a 100% de uso da
sua CPU e nunca mais retorna!!

Alguém tem alguma idéia? Segue abaixo o código da SP:

ALTER PROCEDURE MYSLEEP (
    ms integer)
returns (
    endtime numeric(6,3))
as
declare variable tmp numeric(6,3);
begin
  SELECT EXTRACT(SECOND FROM CURRENT_TIMESTAMP)
    FROM RDB$DATABASE INTO :TMP;

  ENDTIME = TMP;
  TMP = TMP + (MS / 1000);

  WHILE (ENDTIME < TMP) DO
    SELECT EXTRACT(SECOND FROM CURRENT_TIMESTAMP)
      FROM RDB$DATABASE INTO :ENDTIME;

  SUSPEND;
end

Desde já, obrigado e abraço!!

-- 
Kelver Merlotti
Coordenador Editorial do Portal www.ActiveDelphi.com.br
Contato: kelver em activedelphi.com.br
Google: kmerlotti em gmail.com
Msn: kmerlotti em hotmail.com
Tem 1 minutinho? Então dá uma olhadinha nisso:
Um site de publicidades, de Portugal, está pagando em euros (quase 3x
mais que em reais) pra quem estiver disposto a:
  * Ler anúncios
  * Visitar sites
  * Clicar em banners
  * Navegar na NET
  * Ler e-mails
  * Convidar novos usuários
O pagamento é feito em cheque! Registra lá!! Não custa nada! ;-)
http://www.publipt.com/pages/index.php?refid=kmerlotti




Mais detalhes sobre a lista de discussão lista