Administración de Memoría

Administración de Memoría

Postby Boby6Muertos » Fri Jun 20, 2008 5:28 am

Buenas a Todos!

Antes que nada les felicito a todos he visto cosas interesantes en el foro!, como se darán cuenta soy nuevo por aca.
Bueno ahora lo importante y que me preocupa, estoy realizando una aplicación Administrativa con FW.6.12 y xharbour y BCC55 utilizando xmate para compilar, usando Pelles para mis recurso, en donde genere unas clases en las que se basa, pero observo con preocupación que la memoría se va incrementando cada que mando llamar mis clases, como referencia, ya me encarge de eliminar los objetos creados por medio del deleteobject, asegurandome de que esto fue realizado, verificando el resultado de la variable verdadera. Sin embargo no veo que la memoría disminuya.

Por otra parte observo algo muy curioso al minimizar la ventana principal y restaurarla la memoría se recupera.
Alguien me podría dar una idea de como perfeccionar la administración de memoría.

De antemano Gracias!!
Boby6Muertos
 
Posts: 6
Joined: Fri Jun 20, 2008 1:14 am
Location: México

Postby Antonio Linares » Fri Jun 20, 2008 9:43 am

Bienvenido! :-)

FWH llama al "recolector de basura" de Harbour cuando sale de una caja de diálogo.

Si realizas tareas que consuman memoria y en las que no uses diálogos, entonces llama a hb_gcAll() de vez en cuando para que se limpie la memoria usada que ya no es necesaria.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41406
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Muchas Gracias

Postby Boby6Muertos » Fri Jun 20, 2008 1:21 pm

Si vi el colector, y de hecho me llama la atención porque se encuentra en el momento de terminar un dialogo, pero no una ventana, ¿ Tiene eso algún motivo en especial?, Porque mencionas solo utilizarlo de vez en cuando y no utlizarlo por decir al concluir la clase.

Es bueno contar con apoyo de este estilo, creo saber por donde va mi situación, haré unas pruebas y les informare el resultado.

Gracias!!
Boby6Muertos
 
Posts: 6
Joined: Fri Jun 20, 2008 1:14 am
Location: México

Postby Antonio Linares » Fri Jun 20, 2008 3:01 pm

En una aplicacion "tradicional" las cajas de dialogo son el elemento mas usado pues es donde el usuario interacciona con la aplicacion, de ahi que sea un buen momento -en la salida- para llamar al recolector de basuras. Eso no quiere decir que puedan existir excepciones.

El proceso de recoleccion de basura es un proceso que consume tiempo y ejecuta bastantes subprocesos, luego no es conveniente estar llamandolo constantemente. De hecho no pasa nada porque la aplicacion haya consumido una determinada cantidad de memoria, lo importante es que esa memoria la liberemos y no la vayamos acumulando.
regards, saludos

Antonio Linares
www.fivetechsoft.com
User avatar
Antonio Linares
Site Admin
 
Posts: 41406
Joined: Thu Oct 06, 2005 5:47 pm
Location: Spain

Te agradezco muchisimo

Postby Boby6Muertos » Fri Jun 20, 2008 4:54 pm

Ha sido de utilidad estos comentarios.

Por otra parte, me interesaría conocerte personalmente y mostrarte la locura que ando haciendo, y ver de que forma podría contar con una asesoría especifica.

Como referencia me imagino que has de ubicar a Ignacio Vizcaíno, yo durante casi 15 años he estado pegado a sus desarrollos y me han parecido muy intersantes y hoy en día llevo aproximadamente un año, haciendo algo similar.

Me imagino que eso te puede servir de referencia para comprender porque el consumo de memoria, jejejjee


De cualquier forma Gracias por tu ayuda
Boby6Muertos
 
Posts: 6
Joined: Fri Jun 20, 2008 1:14 am
Location: México


Return to FiveWin para Harbour/xHarbour

Who is online

Users browsing this forum: Google [Bot] and 45 guests