FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Error reallocate memory
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Error reallocate memory
Posted: Wed Nov 26, 2008 10:17 AM

David,

El error era "hb_xrealloc can't reallocate memory" ?

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 8523
Joined: Tue Dec 20, 2005 07:36 PM
Error reallocate memory
Posted: Wed Nov 26, 2008 12:15 PM
// Buenas Maestro Antonio, Maestro, y si hago tu ejemplo asi:
// Bloco por bloco de textos... Ejemplo simples.

#include "FiveWin.ch"
Function Main()

   LOCAL cText1 := Space( 1024 * 1024 )  //-> 1,048,576 kBytes
   LOCAL cText2 := Space( 1024 * 1024 )  //-> 1,048,576 kBytes
   LOCAL cText3 := Space( 1024 * 1024 )  //-> 1,048,576 kBytes
   LOCAL cText4 := Space( 1024 * 1024 )  //-> 1,048,576 kBytes
   LOCAL cResult

   cResult := LEN(cText1) + LEN(cText2) + LEN(cText3) + LEN(cText4)

   ? len(cText1)
   ? len(cText2)
   ? len(cText3)
   ? len(cText4)
   
   MsgInfo( ( "mas de 2 gigas: ", cResult ), "Resultado" )

Return Nil

//-> Esta correcto o errado?
João Santos - São Paulo - Brasil - Phone: +55(11)95150-7341
Posts: 199
Joined: Tue Apr 22, 2008 09:54 AM
Error reallocate memory
Posted: Wed Nov 26, 2008 12:19 PM
Antonio Linares wrote:David,

El error era "hb_xrealloc can't reallocate memory" ?


Antonio,

No consigo reproducir el error pues ya no tengo el código de prueba original, lo más cerca que ando es el fm.log un warning que genera:

Memory Allocation Report
Application: C:\Fivewin\gesco\prueba2.exe
xHarbour Version: xHarbour build 0.99.50 Intl. (SimpLex)
Compiler: Borland C++ 5.5.1
Platform: Windows XP Home Edition 5.01.2600 Service Pack 3
Time Occured: 2008.11.26 12:27:41
Total 8974 allocations (3885 reallocation), of which 8973 freed.
Highest total allocated 1154543 bytes in 5059 blocks.
WARNING! Memory allocated but not released: 40 bytes (1 blocks)
Block 1 00B2A4E8 (size 40) ORDLISTADD(0), "E8A4B200E8A4B200E0AD44000100020002000000000000000A000000000000000000000000000000"

Sin que me de el error. Pero cuando sucedió, estoy por asegurar que era el error que describes: "hb_xrealloc can't reallocate memory". Lo siento por no poder ser más explícito, pero no soy bueno dando palos de ciego tampoco.
Posts: 199
Joined: Tue Apr 22, 2008 09:54 AM
Error reallocate memory
Posted: Wed Nov 26, 2008 12:24 PM

Con las versiones más recientes de xHarbour lo mismo...

Saludos!

Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Error reallocate memory
Posted: Wed Nov 26, 2008 01:20 PM

David,

Gracias de todas formas :-)

ya sabemos de donde proceden esos errores: de la incapacidad de redimensionar una cadena a valores cercanos a 2 gigas.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 428
Joined: Thu Oct 19, 2006 12:28 PM
Error reallocate memory
Posted: Fri Nov 28, 2008 09:23 AM
Si miramos en éste foro:



http://www.mail-archive.com/xharbour-developers@lists.sourceforge.net/msg01180.html

Vemos que éste error comenzó a aparecer en la version de Septiembre.

Y aunque dice que puede ser posible a mlcount(), o memoline(), he quitado las líneas que hacen referencia a éstas funciones, y nada sigo sin poder facturar. Estoy dejandolo en el esqueleto para ver qué valores son los que van creciendo, y no detecto nada, ya que cuando empiezo el while, vuelvo a dar nuevos valores a las variables, así que he tenido que volver a compilar con la versión 2.7, has ver si averiguamos algo.

Antonio, sabes si la versión 8.11 que ya nos hemos descargado, está corregido éste error?

Saludos

Jose Luis
--------------------------

Saludos



Jose Luis
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Error reallocate memory
Posted: Fri Nov 28, 2008 10:00 AM

Jose Luis,

Es que no es un error de FWH, es un error debido al compilador, en la forma en que esta usando las cadenas.

Si pudieses reproducir el error con un ejemplo pequeño, podriamos buscar cual es la cadena que está creciendo.

De todas formas, este error tiene que ser corregido en Harbour y xHarbour, pues las cadenas deberían poder llegar hasta los 4 gigas.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Error reallocate memory
Posted: Fri Nov 28, 2008 10:03 AM

João,

1024 * 1024 es un mega, no un giga.

El problema es al intentar llegar a los dos gigas.

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 428
Joined: Thu Oct 19, 2006 12:28 PM
Error reallocate memory
Posted: Fri Nov 28, 2008 08:24 PM
Antonio

Ya está

La culpa la tiene:
  oPrn:cmSay( 4,10,strcapfirst(xDatos),oFont3 )


Dentro de un page.. endpage que a su vez esta dentro de un do while .. enddo.

Me ha costado, pero.....

Saludos

Jose Luis
--------------------------

Saludos



Jose Luis
Posts: 44162
Joined: Thu Oct 06, 2005 05:47 PM
Error reallocate memory
Posted: Fri Nov 28, 2008 08:43 PM

Jose Luis,

Bien! :-)

Enhorabuena por localizarlo

regards, saludos

Antonio Linares
www.fivetechsoft.com

Continue the discussion