Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Coloboración Paypal con ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 25-05-2010
Willo Willo is offline
Miembro
 
Registrado: jun 2006
Posts: 116
Poder: 21
Willo Va por buen camino
Cita:
Empezado por mamcx Ver Mensaje
En los foros de Embarcadero habia leido sobre el asunto, y tiene que ver con el numero de units y las relaciones entre ellos.


Cuantos units tiene tu proyecto? Manejas paquetes?
mamcx... independientemente del numero de units (que son aproximadamente 800) y paquetes de terceros (que si manejo algunos)... la aplicacion es la misma en la que he trabajado por mas de 2 años y en ese periodo he agregado units y he quitado algunos..

asi que basicamente se ha mantenido en tamaño...

habiendo dicho eso, la lentitud se ha presentado en las ultimas 3 semanas...
Responder Con Cita
  #2  
Antiguo 25-05-2010
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 19.442
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Cita:
Empezado por Willo Ver Mensaje
mamcx... independientemente del numero de units (que son aproximadamente 800) y paquetes de terceros (que si manejo algunos)... la aplicacion es la misma en la que he trabajado por mas de 2 años y en ese periodo he agregado units y he quitado algunos..

asi que basicamente se ha mantenido en tamaño...

habiendo dicho eso, la lentitud se ha presentado en las ultimas 3 semanas...
Se parece bastante (por no decir mucho) a un problema que he "sufrido en mis propias carnes" con una aplicación.
En mi caso está relacionado con lo que comenta Mamcx. La relación entre units.

Nuestra aplicación también trabaja con un gran número de Units (del mismo orden que la tuya); está dividida en packages y nos sucedió algo similar. A partir de una fecha y sin razón aparente empezó a bajar el rendimiento de compilación de algunos packages de forma alarmante.

Después de mucho revisar encontramos que eran los USES de algunas Units en otras. Es difícil explicar la situación, pero ya sabes que se puede producir "circularidad" entre units (en el USES) siempre que una se coloque en Interficie y la otra en el uses de Implementación.

al crear "esta circularidad" aunque no daba error de compilación provocaba que a la hora de compilar esta se ralentizara de forma exagerada. El porqué exacto no se cual es, pero parecía como que realizara la compilación de las mismas units una y otra vez.

El hecho de cambiar algunas definiciones de sitio y evitar algunas de estas circularidades evitó el problema.
__________________
Germán Estévez => Web/Blog
Guía de estilo, Guía alternativa
Utiliza TAG's en tus mensajes.
Contactar con el Clubdelphi

P.D: Más tiempo dedicado a la pregunta=Mejores respuestas.
Responder Con Cita
  #3  
Antiguo 25-05-2010
Avatar de Faust
Faust Faust is offline
Miembro
 
Registrado: abr 2006
Ubicación: México D.F.
Posts: 930
Poder: 21
Faust Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
Se parece bastante (por no decir mucho) a un problema que he "sufrido en mis propias carnes" con una aplicación.
En mi caso está relacionado con lo que comenta Mamcx. La relación entre units.

Nuestra aplicación también trabaja con un gran número de Units (del mismo orden que la tuya); está dividida en packages y nos sucedió algo similar. A partir de una fecha y sin razón aparente empezó a bajar el rendimiento de compilación de algunos packages de forma alarmante.

Después de mucho revisar encontramos que eran los USES de algunas Units en otras. Es difícil explicar la situación, pero ya sabes que se puede producir "circularidad" entre units (en el USES) siempre que una se coloque en Interficie y la otra en el uses de Implementación.

al crear "esta circularidad" aunque no daba error de compilación provocaba que a la hora de compilar esta se ralentizara de forma exagerada. El porqué exacto no se cual es, pero parecía como que realizara la compilación de las mismas units una y otra vez.

El hecho de cambiar algunas definiciones de sitio y evitar algunas de estas circularidades evitó el problema.
Ahora que comentas eso Neftalí, recuerdo que alguna vez me pasó que era el orden, no recuerdo exactamente, pero era algo así:

Código Delphi [-]
uses
  UnitX, UnitY, UnitZ;

Tardaba más pues algunas unitdades se añadieron al ingresar componentes al formulario o al escribirlas manualmente y era algo difícil de encontrar, pero se me ocurrió cambiarlas de orden p. ej. así:

Código Delphi [-]
uses
  UnitZ, UnitX, UnitY;

Y problema solucionado incluso compilaba rapídisimo, como una aplicación vacía, no me dediqué al buscar el porque de esto, pero ahora me doy una idea con el comentario de Neftalí, se puede deber a referencias circulares, a las sentencias colocadas en las sección initialize de algunas unidades y como un caso aparte también se puede deber a querys abiertos en tiempo de diseño y que en tiempo de ejecución tardan un poco más.

Saludos.
__________________
Herr Heins Faust
Responder Con Cita
  #4  
Antiguo 27-05-2010
Willo Willo is offline
Miembro
 
Registrado: jun 2006
Posts: 116
Poder: 21
Willo Va por buen camino
Cita:
Empezado por Faust Ver Mensaje
Ahora que comentas eso Neftalí, recuerdo que alguna vez me pasó que era el orden, no recuerdo exactamente, pero era algo así:

Código Delphi [-]uses UnitX, UnitY, UnitZ;


Tardaba más pues algunas unitdades se añadieron al ingresar componentes al formulario o al escribirlas manualmente y era algo difícil de encontrar, pero se me ocurrió cambiarlas de orden p. ej. así:

Código Delphi [-]uses UnitZ, UnitX, UnitY;


Y problema solucionado incluso compilaba rapídisimo, como una aplicación vacía, no me dediqué al buscar el porque de esto, pero ahora me doy una idea con el comentario de Neftalí, se puede deber a referencias circulares, a las sentencias colocadas en las sección initialize de algunas unidades y como un caso aparte también se puede deber a querys abiertos en tiempo de diseño y que en tiempo de ejecución tardan un poco más.

Saludos.
Ufff!!!... pues si que me espera un gran trabajo por delante... pero por el bien de mi salud mental es algo que revisare...


Tambien creo que parte del problema esta en windows, les comento:

Ya que no podia trabajar productivamente con mi laptop en estas circunstancias, se me ocurrio instalar el Delphi en un entorno "limpio" de windows (una solucion drastica por todo lo que tarda uno en instalar componentes y dejar el entorno a punto... pero bueno).

El caso es que ahora estoy trabajando en otra maquina (con la porqueria de windows vista), y compila muy rapido!... y eso que la otra maquina no tiene tanta capacidad como mi laptop...

No se cuanto dure esto, pero al menos me dara tiempo para analizar el orden de las units y las posibles referencias circulares....( que a decir verdad, hay muchas... )

El punto aqui es que, aun con un desorden en las units, referencias circulares, querys abiertos en tiempo de diseño, etc., etc.... el tiempo de compilacion, las respuestas de IDE, el code insight y todo, deberia ser constante, es decir deberia ser lento siempre si tuvieramos todos esos problemas en nuestra aplicacion....pero no es asi, los problemas se presentan repentinamente y sin razon aparente....
Responder Con Cita
  #5  
Antiguo 27-05-2010
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.964
Poder: 29
delphi.com.ar Va camino a la fama
Alguna vez me pasó que el IDE al momento de compilación se ponía excesivamente lento. El problema que encontré, fue que el compilador estaba buscando Units en carpetas en la red inexistentes. Simplemente chequea el Search Path del proyecto y los Libraryes de "Enviroment Options".

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #6  
Antiguo 27-05-2010
Avatar de José Luis Garcí
[José Luis Garcí] José Luis Garcí is offline
Miembro Premium
 
Registrado: may 2003
Ubicación: Las Palmas de G.C.
Posts: 1.372
Poder: 25
José Luis Garcí Va camino a la fama
Willo, cual es el peso de la aplicación y de las bases de datos, podría ser un problema de gestión de la memoria, por programas posteriores instalados?
__________________
Un saludo desde Canarias, "El abuelo Cebolleta"
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Que estoy haciendo mal ? piolillo Internet 8 28-07-2011 17:23:24
Que estoy Haciendo mal jostrix PHP 1 01-11-2004 01:29:16


La franja horaria es GMT +2. Ahora son las 06:21:56.


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