Revisa tu transaccion como esta configurada, te paso un codigo que acelera tu codigo:
Código Delphi
[-] if Temporizador.Interval = 5000 then begin TreeView1.Items.Clear; With DMDatos.IBConsultaSql do Begin Sql.Clear; Sql.Add('Select * From USUARIOS where US_ESTADO = ''Conectado'''; Open; DMDatos.IBConsultaSql.First; While Not DMDatos.IBConsultaSql.Eof Do Begin TreeView1.Items.AddChild(nil, DMDatos.IBConsultaSql.fieldbyname('US_USUARIO').AsString ); DMDatos.IBConsultaSql.Next; End; End; end;
Ademas te recomiendo cambiar el us_esado a numerico y ponerle un indice, seria mucho mas rapido.
Saludos