FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Administración de Memoría
Posts: 10
Joined: Fri Jun 20, 2008 01:14 AM
Administración de Memoría
Posted: Fri Jun 20, 2008 05: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!!

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Administración de Memoría
Posted: Fri Jun 20, 2008 09: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
Posts: 10
Joined: Fri Jun 20, 2008 01:14 AM
Muchas Gracias
Posted: Fri Jun 20, 2008 01: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!!

Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Administración de Memoría
Posted: Fri Jun 20, 2008 03: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
Posts: 10
Joined: Fri Jun 20, 2008 01:14 AM
Te agradezco muchisimo
Posted: Fri Jun 20, 2008 04: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

Continue the discussion