Consumo de Memoria
Posted: Fri Jan 23, 2009 5:00 pm
Buenas Tardes Foro, una consultilla
Tengo una aplicación en un punto de información que está constantemente ejecutandose. La pantalla principal es un dialogo asociado a una ventana que está esperando a que pasen una tarjeta para que el sistema la valide. En función de la validación muestro un msgwait con la información correspondiente. La aplicación está terminada, ahora la estoy depurando, y me encuentro con un problema y es que cada vez que se ejecuta un msgwait, desde el administrador de tareas veo que el consumo de la aplicación crecía. Para buscarle una solución temporal, me he creado esta función que hace de msgwait, pero con fonts y un poco más grande el diálogo:
Viendo que el problema no se solucionaba, le añadí la ultima línea que véis
El problema sigue, y lo que me preocupa es que al ser una aplicación que está constantemente ejecutandose, llegará un momento, en que se pueda colapsar la memoria.
¿Sabéis como puedo solicionar el problema?
Muchas Gracias a todos de antemano.
Tengo una aplicación en un punto de información que está constantemente ejecutandose. La pantalla principal es un dialogo asociado a una ventana que está esperando a que pasen una tarjeta para que el sistema la valide. En función de la validación muestro un msgwait con la información correspondiente. La aplicación está terminada, ahora la estoy depurando, y me encuentro con un problema y es que cada vez que se ejecuta un msgwait, desde el administrador de tareas veo que el consumo de la aplicación crecía. Para buscarle una solución temporal, me he creado esta función que hace de msgwait, pero con fonts y un poco más grande el diálogo:
Code: Select all
function BigMsg(Linea1,Linea2,Linea3,nSeconds,cTitulo)
local odlg, oSay1,oSay2,oSay3,ofont,i
default linea1:=""
default linea2:=""
default linea3:=""
default nSeconds:=5
default cTitulo := oConfiguracion:Titulo_Aplicacion
define font ofont name "Tahoma" size 0,35
define dialog odlg resource "BIGMSG" colors CLR_BLUE, RGB( 231,242,255 ) title cTitulo
redefine say oSay1 var Linea1 id 101 of odlg font ofont
redefine say oSay2 var Linea2 id 102 of odlg font ofont
redefine say oSay3 var Linea3 id 103 of odlg font ofont
oSay1:ltransparent:=.t.
oSay2:ltransparent:=.t.
oSay3:ltransparent:=.t.
activate dialog odlg center nowait
for i = 1 to 2595000*nSeconds
next i
odlg:end()
oFont:end()
hb_gcAll()
return
Code: Select all
hb_gcAll()
¿Sabéis como puedo solicionar el problema?
Muchas Gracias a todos de antemano.