Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Providers (https://www.clubdelphi.com/foros/forumdisplay.php?f=10)
-   -   Lentitud para arrancar de mi aplicacion (https://www.clubdelphi.com/foros/showthread.php?t=35524)

Valdez 13-09-2006 10:11:07

Lentitud para arrancar de mi aplicacion
 
Hola como estan todos .. espero que bien ...

Distinguidos amigos tengo una aplicación desarrollada en delphi 6 con interbase 6.5, el problema que enfrento en este momento es que se pone muy lento para inicial .. aveces se toma mas de 2 minutos y eso es deseperate ... si alguien puede ayudarme para que mi aplicacion se ejecutte de inmediato sin importar el tamaño de la base de datos .. por favor .. darme la mano en eso ... gracias mil


en espera de sus respuestas.

Ñuño Martínez 13-09-2006 10:34:06

Depende mucho de la aplicación.

Una solución válida si el ejecutable es muy grande es dividir el proyecto en módulos, cada uno de los cuales se implementaría en ejecutables diferentes (bien archivos EXE bien archivos DLL, SO, OVL...) en el que cada módulo se cargaría en memoria únicamente en el momento en que se vaya a utilizar y se descargaría cuando ya no se necesite. En la ayuda de Delphi hay información sobre cómo crear módulos DLL y cómo cargarlos y descargaros en memoria utilizando el API de Windows.

Otra solución, esta vez si el problema es la base de datos, consistiría en cargar las tablas únicamente cuando vayan a utilizarse. Es decir, si utilizas muchas tablas y accedes a ellas mediante TTable o similares, crear estos objetos sólo cuando vayan a utilizarse y destruírlos cuando ya no se necesiten. Otra forma de implementar esta solución es utilizar únicamente consultas SQL.

Espero que esto sirva para darte ideas y no para liarte más.

Neftali [Germán.Estévez] 13-09-2006 10:36:04

Das pocos datos de lo que estás haciendo al arrancar.
Recuerdo que en algunos ordenadores daba problemas abrir una Base de Datos con extensión GDB, por temas de seguridad configurada por XP; Revisa esto.

De todas formas, esto es un problema al conectar con la Base de Datos, simplemente al conectar; Otro tema son las cosas que tú puedas estar haciendo al arrancar; ¿Abres tablas al arrancar la aplicación? ¿Cómo las estás abriendo?

AdrianD 13-09-2006 17:04:57

Como la pregunta esta en el apartado de Providers asumo que puedes estar ttrabajando con clientsdataset y providers, si ese es el caso es fundamental que la consulta de la que extraes los datos no traiga todos los datos o si esta "enganchado" a una tabla que esta no sea muy grande por que si es asi cuando abres el ClientDataSet, se producira la demora. Debes tener en cuenta que los sistemas SQL, estan pensados para trabajar a nivel de registro y no de tabla


La franja horaria es GMT +2. Ahora son las 08:59:01.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi