Ver Mensaje Individual
  #7  
Antiguo 21-11-2022
marco3k marco3k is offline
Miembro
 
Registrado: feb 2015
Posts: 61
Reputación: 10
marco3k Va por buen camino
Cita:
Empezado por Anel Hernandez Ver Mensaje
Hola,

finalmente segui el consejo de duilioisola y sige dando error "out of memory". Pero

esta vez llega hasta el fichero 8774 y crea un fichero de 330 MB.

Decidi separar los procesos en botones separados, uno para la lectura de los

ficheros iniciales y puesta en tabla. Mientras, el segundo boton salvaba toda la

tabla en un fichero con las instrucciones de duilioisola.

Esta vez funciono OK.

Que puede estar pasando que da error cuando lo hago combinado como el ejemplo de

duilioisola y sin embargo cuando lo hago separado funciona sin problema?

Gracias,
A

Bueno tu proceso maneja basantes datos y tanto el stringgrid y stringlist almacenan los datos en memoria ram y tu al mencionar que generas archivos de salida de mas de 300 mb entonces es evidente que te salga ese mensaje de error. Para hacer todo junto podrias probar lo que te comente al inicio, que es consolidar tus datos en un clientdataset desconectado y a la par escribir en los archivos de texto. En ambos procesos estas escribiendo directamente al disco, técnicamente no tendria porque colgarse (porque no vas a usar intensivamente la ram), pero habria q evaluar la velocidad del proceso si conviene hacerlo asi, como optimizar al clientdataset anulando el logchange a falso y usar las columnas directamente (no usar fieldbyname) ya que la ram es mas rapida. A lo mejor haciendo separado es mas rapido (consolidar en stringgrid y luego grabar a txt), eso lo tendrías que probar.
Responder Con Cita