Pascal/Turbo Pascal - problemas de memoria?

 
Vista:

problemas de memoria?

Publicado por zacker (19 intervenciones) el 31/08/2002 13:31:55
Hola, resulta que he hecho una aplicación en FreePascal en la que una de mis unidades se encarga de efectuar el volcado de un fichero de texto a un array. En concreto el fichero de texto es un diccionario, por lo que el array es enorme, en concreto es de un tamaño de casi 300 000. Bien, resulta que con la versión del FreePascal de abril del 2002 con linux mandrake 8 va de pm sin problem, si tira sus milésimas de segundo para cargarlo pero sin problem. Pues bien, lo he probado en otro pc con linux red hat y con la versión de FreePascal del 2000 y resulta que sencillamente al efectuar la carga del diccionario se peta literalmente, directamente sale en la línea de comandos la famosa expresión "core dumped". Yo pregunto, eso según deduzco yo es por problemas de memoria pero...digo yo, puede tener que ver directamente con la versión de FreePascal o puede ser otra cosa? hasta el lunes no podre probarlo en ese pc nuevamente pero me pregunto si con algo similar al "malloc" en C++ podría solucionar eso en FreePascal, algo con memoria estática.

Gracias y un saludo!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:problemas de memoria?

Publicado por kanner (6 intervenciones) el 31/08/2002 18:04:43
yo te aconsejaria que en vez de volcarlos a un array lo hagas con punteros.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:problemas de memoria?

Publicado por Diego Romero (786 intervenciones) el 02/09/2002 06:12:57
Malloc de C = Getmem de Pascal
Pero como bién dice kanner en vez de un gigantesco array usa una lista!
Y mejor aún, es muy probable que no necesites cargar TODO el archivo de texto en memoria, por qué no lo vas cargando de a poco?, eso hará mas fexlible tu programa y no molestarás al resto del sistema consumiendo enormes cantidades de memoria que no usas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar