![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
No tengo la solución a tu problema (ojalá la tuviera) pero sí puedo darte otra pista de dónde buscar. Si estás seguro que en tu código no hay nada raro que provoque el comportamiento (bucles infinitos, threads colgados, etc...) puedes ir mirando las .dll que usa tu programa. Aunque no las uses explícitamente algunos componentes (como el TListView) usan DLL de Windows. También la conexión a la base de datos podría estar usando una o varias DLLs, si alguna es la culpable, el Administrador de Tareas de Windows te reportará que es tu aplicación la que hace el consumo aunque en realidad sea el código de alguna DLL.
Hay herramientas externas que te ayudan a identificar todas las DLLs que un programa está usando, por ejemplo el PrcView |
|
#2
|
|||
|
|||
|
Tambien puedes usar un profiler, como el GPProfile o el ProDelphi. Los puedes descargar gratuitamente, ejecutas la aplicación desde estes programas (leete bien las instrucciones, antes), y tendrás un resumen indicando que funciones son las que gastan más CPU, memoria, cuantas veces se llama cada función, etc...
|
|
#3
|
||||
|
||||
|
Otra cuestión que te puede estar cargando la cpu, es si tu programa usa conecciones a internet, o sockets, si no los controlas adecuadamente, pueden estar consumiendo continuamente recursos, aunque opino lo mismo que neftali, creo que el problema más tipico es un timer, con proceso continuo, si usas timer, prueba a aumenta el interval, con lo cual se producira el mismo efecto pero tardara mas tiempo, o controla el active cuando lo necesites y desactivarlo cuando no.
Por último, cual es tu gestión de ventanas, liberas la ventana si es así te encargas de liberar la memoria de componentes usadas que lo necesite, usas algun proceso de seguimiento continuo, como vez hay muchos procesos, que te pueden estar consumiendo, memoria y procesador.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta" |
|
#4
|
||||
|
||||
|
Muchas gracias por toda su colaboracion, DriverOp y mcs, en este momento me pongo a checar las herramientas que me comentan muchas gracias por su ayuda, lo checo y les comento (a todo foro) como me va.
José Luis Garcí gracias al igual que a todos los compañeros del foro, te comento, mi aplicacion no usa ni un solo timer, hilos no tengo, y en cuestion de las ventanas child me he asegurado de liberarlas correctamente cada que se cierran, y lo raro es que tengo otra pequeña aplicacion donde si uso hasta dos timers, un hilo y eventos de aplicacion con mensajes de windows, y no me bota el micro como la aplicacion que comento, pero igual gracias nuevamente a ti y a todos, me comprometo a poner la solucion aki (si logro solucionalo jaja ) para quien tenga un problema similar.Saludos y aki seguimos!
__________________
Nadie puede separar su fe de sus actos, o sus creencias de sus afanes |
|
#5
|
||||
|
||||
|
Al igual que los otros compañeros, estamos para echar una mano si podemos y que no sea al cuello
, ahora al tema, usas componentes de terceros, porque estos pueden usar timers que tu no controlas, para comprobarlos, si tienes el fuente, revisa lo.
__________________
Un saludo desde Canarias, "El abuelo Cebolleta" |
|
#6
|
||||
|
||||
|
Gracias
Despues de chequear todos y cada un o de los formularios encontre el ptoblema, era un componente encargado de hacer un ping, este componente fue creado por un compañero, tenia un timer incluido, aprecio mucho su pronta respuesta y gracias por todo y a todos, ha quedado resuelto.
Otra vez, Gracias.
__________________
Nadie puede separar su fe de sus actos, o sus creencias de sus afanes |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
|