FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Capacidad de variable de memoria HARBOUR
Posts: 851
Joined: Sun Nov 09, 2014 05:01 PM
Capacidad de variable de memoria HARBOUR
Posted: Tue Mar 26, 2024 07:03 PM

Saludos amigos del foro.

Al extraer un campo de tipo MEDIUMTEXT de mysql, ¿Qué capacidad tiene HARBOUR para almacenar el dato en una variable de memoria tipo alfanumérica en el caso que el mismo en la tabla posea el máximo de su tamaño que son 16,777,215 caracteres ?

"Los errores en programación, siempre están entre la silla y el teclado..."



Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin



Carora, Estado Lara, Venezuela.
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: Capacidad de variable de memoria HARBOUR
Posted: Wed Mar 27, 2024 04:28 AM

En teoría límite de memoria, yo he levantado con memoread archivos de más de 16MB en variables de memorias sin problemas.

Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)
Posts: 851
Joined: Sun Nov 09, 2014 05:01 PM
Re: Capacidad de variable de memoria HARBOUR
Posted: Wed Mar 27, 2024 12:38 PM
carlos vargas wrote:En teoría límite de memoria, yo he levantado con memoread archivos de más de 16MB en variables de memorias sin problemas.
16mb para una variable es bastante. Gracias carlos por la información.
"Los errores en programación, siempre están entre la silla y el teclado..."



Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin



Carora, Estado Lara, Venezuela.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Capacidad de variable de memoria HARBOUR
Posted: Wed Mar 27, 2024 12:48 PM
Si la aplicación es de 64 bits, usando Harbour y FWH, la capacidad de uso de memoria es muchísimo mayor.
Una aplicación de 32 bits puede direccionar hasta 4 gigabytes (GB) de memoria. Esto se debe a que el tamaño de la memoria direccionable se define por el número de bits que se utilizan para representar la dirección de memoria. En un sistema de 32 bits, se utilizan 32 bits para representar la dirección, lo que significa que hay 2^32 = 4.294.967.296 direcciones posibles.

Por otro lado, una aplicación de 64 bits puede direccionar hasta 16 exabytes (EB) de memoria. Esto se debe a que en un sistema de 64 bits, se utilizan 64 bits para representar la dirección, lo que significa que hay 2^64 = 18.446.744.073.709.551.616 direcciones posibles.
Eso es en teoria, en la práctica es menor obviamente.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 851
Joined: Sun Nov 09, 2014 05:01 PM
Re: Capacidad de variable de memoria HARBOUR
Posted: Wed Mar 27, 2024 05:55 PM

Gracias Master Linares.

Ahora la otra pregunta:

Cual es el máximo de caracteres para una variable alfanumerica de memoria en Harbour? Tiene algún límite?

"Los errores en programación, siempre están entre la silla y el teclado..."



Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin



Carora, Estado Lara, Venezuela.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Capacidad de variable de memoria HARBOUR
Posted: Wed Mar 27, 2024 06:01 PM
Depende de la memoria libre de la que dispongas.

Prueba con esto:
Code (fw): Select all Collapse
 local c := Space( 2 ^ 24 )

   MsgInfo( Len( c ) )
Verás que no permite 2 ^ 32. Aunque en teoría debería poder llegar a ese valor, Windows no lo permite.
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 851
Joined: Sun Nov 09, 2014 05:01 PM
Re: Capacidad de variable de memoria HARBOUR
Posted: Thu Mar 28, 2024 12:17 AM

Gracias Nuevamente Master.

Ya hice la prueba, lo máximo que reconoce con HARBOUR es 2^30 que serian 1.073.741.824 caracteres o 1GB.

Corríjame si me equivoco.

"Los errores en programación, siempre están entre la silla y el teclado..."



Fwh 19.06 32 bits + Harbour 3.2 + Borland 7.4 + MariaDB + TDolphin



Carora, Estado Lara, Venezuela.
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: Capacidad de variable de memoria HARBOUR
Posted: Thu Mar 28, 2024 06:33 AM
Parece correcto :-)
regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 9020
Joined: Thu Oct 06, 2005 08:17 PM
Re: Capacidad de variable de memoria HARBOUR
Posted: Thu Mar 28, 2024 09:05 AM
With 64 bit we can rise it till 2 ^ 35, both Harbour and xHarbour, with 16 GB RAM:
Code (fw): Select all Collapse
FUNCTION MAIN()

    LOCAL cSpace := SPACE( 2 ^ 35 )

    ? LEN( cSpace )

    INKEY( 0 )

    RETURN NIL

Continue the discussion