Antonio, compañeros :
Existe algun limite de controles en la app ?
Hace algunos dias la app me empezo a hacer cosas raras como cerrarse de repente sin aviso alguno, despues de estar checando y probando mil cosas, descubri que si comentaba los ultimos controles que genere todo funciona correctamente, si los activo empieza a fallar.
Hubo momentos que generaba un aviso de error y decia que los handlers del sistema estaban agotados ( error 1158 ) mi pc de desarrollo es i7 con 6 gb ram
Ya intente destruir el handle de cada recordset y nada :
ors:close
ors:ActiveConnection:hObj := nil
ors := nil
Ya hice una depuracion de variables y sigue igual, de hecho casi acabo de pasar todas mis vars locales a un hash para efectos de tener 1 a 3 variables por funcion como maximo
Estoy buscando controles que no afecten o sean muy importantes para quitarlos : say, checkbox, buttons, etc
Y por ultimo, estoy pensando en dividir algunas funciones en otras mas pequeñas.
Como datos estadisticos :
- 27 prgs ( algunos son pequenos )
- 120,000 lineas de codigo entre todos
- 4,150 redefines entre todos
- 11 archivos de recursos (.rc)
Alguna sugerencia o tip por checar para tratar de corregir este detalle, ya que de alguna manera necesito agregar mas funciones a la app.
Saludos
Antonio, limite de controles en aplicacion
- Raymundo Islas M.
- Posts: 590
- Joined: Tue Mar 14, 2006 11:34 pm
- Location: Acapulco, Gro. MEXICO
Antonio, limite de controles en aplicacion
FWH 10.6 + xHarbour + Borland 582
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Antonio, limite de controles en aplicacion
Raymundo,
En el control de tareas de Windows, activa las columnas para ver consumo de memoria, handles abiertos, etc por aplicación y monitoriza como se comporta la aplicación.
Posiblemente estes abriendo handles que no se cierren, más y más, hasta que llegas al límite de memoria. En 32 bits ese límite esta en torno a dos gigas y pico aunque en realidad debiera ser de 4 gigas, pero Windows no da a la aplicación toda la memoria que debiera.
En el control de tareas de Windows, activa las columnas para ver consumo de memoria, handles abiertos, etc por aplicación y monitoriza como se comporta la aplicación.
Posiblemente estes abriendo handles que no se cierren, más y más, hasta que llegas al límite de memoria. En 32 bits ese límite esta en torno a dos gigas y pico aunque en realidad debiera ser de 4 gigas, pero Windows no da a la aplicación toda la memoria que debiera.
- Raymundo Islas M.
- Posts: 590
- Joined: Tue Mar 14, 2006 11:34 pm
- Location: Acapulco, Gro. MEXICO
Re: Antonio, limite de controles en aplicacion
Antonio,
Ok, de entrada me sale :
memoria : 80,XXX kb
Obj usuario : 9,700
Obj GDI : 5,795
Y sip, conforme me muevo en la app va incrementando de poco en poco, pero nunca disminuye o regresa al valor original. Voy a checar el codigo de tales funciones para donde esta el leak de recursos.
Aunque lo raro, es que el problema se presenta(ba) al iniciar la app.
El detalle que tengo es que cierro y abro la app constantemente, segun hago ajustes. Le voy a pedir a unos clientes que chequen el dato ya que ellos le dan uso real todo el dia.
Checo y te informo.
Gracias y saludos
Ok, de entrada me sale :
memoria : 80,XXX kb
Obj usuario : 9,700
Obj GDI : 5,795
Y sip, conforme me muevo en la app va incrementando de poco en poco, pero nunca disminuye o regresa al valor original. Voy a checar el codigo de tales funciones para donde esta el leak de recursos.
Aunque lo raro, es que el problema se presenta(ba) al iniciar la app.
El detalle que tengo es que cierro y abro la app constantemente, segun hago ajustes. Le voy a pedir a unos clientes que chequen el dato ya que ellos le dan uso real todo el dia.
Checo y te informo.
Gracias y saludos
FWH 10.6 + xHarbour + Borland 582