Problemas con memoria (Solucionado)

Problemas con memoria (Solucionado)

Postby Blessed » Tue Jul 22, 2008 8:43 pm

Saludos amigos del foro:

Estoy haciendo una aplicacion de inventario y facturacion, que lleva control de series de partes.
Las cuales son muchas, he intentado con arreglos manejas desde objetos, arreglos estaticos, publicos y privados, y cuando se emite una factura y se inicia la siguiente, me queda cada vez menos memoria disponible.
Como si los valores de los arreglos no quedaran disponibles al terminar la facturacion; he usado comandos como RELEASE <nombrearreglo>, pero sin ningun cambio.
Despues de 4 o 5 facturas, es necesario salir del programa para poder continuar.

Estoy usando FiveWin 8.01 con xHarbour

Saludos desde Honduras :)
Last edited by Blessed on Wed Jul 23, 2008 4:42 pm, edited 2 times in total.
Oscar A. Martinez
http://www.multisofthn.com
Honduras, Centro America
xHarbour Enterprise 1.2.2, Fivewin 13.06
User avatar
Blessed
 
Posts: 243
Joined: Wed Sep 19, 2007 4:32 pm
Location: Honduras, C.A.

Postby MGA » Tue Jul 22, 2008 8:56 pm

Blessed

Usted utiliza DIALOGS ou WINDOWS mdi, se usa MDI coloque no valid(hb_gcAll(),.t.)
ubiratanmga@gmail.com

FWH24.04
BCC7.3
HARBOUR3.2
xMate
Pelles´C
TDolphin
MGA
 
Posts: 1254
Joined: Mon Feb 25, 2008 2:54 pm
Location: Brasil/PR/Maringá

Postby karinha » Tue Jul 22, 2008 8:57 pm

Hola,

Podrias muestrar como estás haciendo?

Hay algun LOOPING sin el SYSREFRESH()?

No tengo este problema.

Saludos.
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
User avatar
karinha
 
Posts: 7860
Joined: Tue Dec 20, 2005 7:36 pm
Location: São Paulo - Brasil

Postby Blessed » Tue Jul 22, 2008 9:01 pm

Gracias por su atencion

Estoy usando Dialogs MDI, estoy quitando todos aquellos arreglos que paso por referencia.

Code: Select all  Expand view  RUN
LOCAL myArreglo

Filldata( @MyArreglo )


Olivde mencionar que las consultas pueden ser de 50 elementos o bien de 5000, por lo cual estoy abusando de la memoria, ya que con tablas el funcionamiento es sumamente lento.

Saludos
Oscar A. Martinez
http://www.multisofthn.com
Honduras, Centro America
xHarbour Enterprise 1.2.2, Fivewin 13.06
User avatar
Blessed
 
Posts: 243
Joined: Wed Sep 19, 2007 4:32 pm
Location: Honduras, C.A.

Postby MGA » Tue Jul 22, 2008 9:08 pm

Blessed, tive um problema parecido de memoria trabalhando com MDIs, só que estava fazendo errado...


No meu caso eu tinha um função que montava BTNBMPs na tela MDI, porem toda vez cria-va objetos em vez de usar os já existentes, isso consumia muita memoria.

Se postar uma parte do seu fonte, podemos analizar juntos.

Espero ter ajudado
ubiratanmga@gmail.com

FWH24.04
BCC7.3
HARBOUR3.2
xMate
Pelles´C
TDolphin
MGA
 
Posts: 1254
Joined: Mon Feb 25, 2008 2:54 pm
Location: Brasil/PR/Maringá

Postby Blessed » Tue Jul 22, 2008 9:27 pm

Gracias, esa la mitad del problema

Una libreria de Terceros grafica, que al agregarle todo lo que esta ofrece, me dejo sin memoria; no lo habia notado ya que hacia poco uso de esa libreria.

Saludos, debo reportar esto a mi proveedor;

pero aun tengo los problemas de arreglos.

Saludos
Oscar A. Martinez
http://www.multisofthn.com
Honduras, Centro America
xHarbour Enterprise 1.2.2, Fivewin 13.06
User avatar
Blessed
 
Posts: 243
Joined: Wed Sep 19, 2007 4:32 pm
Location: Honduras, C.A.

Postby Blessed » Tue Jul 22, 2008 10:24 pm

He estado manejando los arreglos con dos dimensiones

Inicialmente los declaraba estaticos, y los cargaba con las consultas pero al quererlos vaciar, el volumen de memeria usado segun el administrador de tareas no se libera.

Por ahi en el foro lei que no era conveniente manejar arreglos estaticos, e hice el cambio.

Y se nota en la maquina cuando haz hecho varias facturas.
Posteriormente los pase a publicos y privados, pero con el mismo resultado.

Saludos :)
Oscar A. Martinez
http://www.multisofthn.com
Honduras, Centro America
xHarbour Enterprise 1.2.2, Fivewin 13.06
User avatar
Blessed
 
Posts: 243
Joined: Wed Sep 19, 2007 4:32 pm
Location: Honduras, C.A.

Postby Antonio Linares » Tue Jul 22, 2008 11:41 pm

Asegurate de vaciar los arreglos (arrays) despues de usarlos no vaya a ser que los estes dejando guardados en alguna variable:

aArreglo := nil

y si lo has guardado en alguna variable, tambien has de vaciarlo:

aTemp := { aArreglo }

aArreglo := nil // esto no ha vaciado el contenido de aTemp !!!

aTemp[ 1 ] := nil // ahora si lo has vaciado
regards, saludos

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

Postby Blessed » Wed Jul 23, 2008 4:44 pm

Antonio Gracias mil.

Esa ha sido la solucion con los arreglos.

Saludos :)
Oscar A. Martinez
http://www.multisofthn.com
Honduras, Centro America
xHarbour Enterprise 1.2.2, Fivewin 13.06
User avatar
Blessed
 
Posts: 243
Joined: Wed Sep 19, 2007 4:32 pm
Location: Honduras, C.A.

Postby Patricio Avalos Aguirre » Wed Jul 23, 2008 8:31 pm

Hola

Consulta, es un procedimiento cuando se usa Arreglos:
ya que yo usO bastante arreglo en mi aplicacion:

Code: Select all  Expand view  RUN
#define TOT 40
procedure XX()
local aArray[TOT]

DEFINE DIALOG...
bla..bla..
ACTIBATE DIALOG ...

dbCloeAll()

return


Abria que cambiar algo asi

Code: Select all  Expand view  RUN
#define TOT 40
procedure XX()
local aArray[TOT]

DEFINE DIALOG...
bla..bla..
ACTIBATE DIALOG ...

dbCloeAll()
aArray := NIL
return
Saludos
Patricio

__________________________________________________________________
Version: Harbour 3.2.0dev (r1307082134),Compiler: Borland C++ 5.8.2 (32-bit)
PCode version: 0.3, FWH 13.2
http://www.sialm.cl
User avatar
Patricio Avalos Aguirre
 
Posts: 1060
Joined: Fri Oct 07, 2005 1:56 pm
Location: La Serena, Chile


Return to FiveWin para Harbour/xHarbour

Who is online

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