Buenos días,
con la versión de xailer 6.2, no se si siendo problema con harbour se produce en cualquier versión de xailer,
tengo que leer de disco un fichero de texto y cargarlo en una variable, mide 1 GB, lo abro con notepad en 1 seg sin problemas,
pero en mi aplicación, si hago esto:
miVar := memoread( cFile )
La aplicación xailer se desvanece sin dejar rastro.
¿Tiene alguna solución? o ¿Sabéis como solucionar este problema?
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Problema de memoria
-
- Mensajes: 100
- Registrado: Vie Abr 10, 2009 11:02 pm
Problema de memoria
Un Saludo,
Joaquín Martínez
Joaquín Martínez
- ignacio
- Site Admin
- Mensajes: 9255
- Registrado: Lun Abr 06, 2015 8:00 pm
- Ubicación: Madrid, Spain
- Contactar:
Re: Problema de memoria
Hola,
MemoRead() es una función de Harbour y no de Xailer. Y por supuesto, Xailer no hace ningún tipo de hack en Harbour para cambiar su comportamiento.
En cualquier caso no es muy aconsejable lo que está haciendo y dudo mucho que Harbour (con o sin Xailer) lo abra al vuelo sin pestañear. Hay que abrirlo poco a poco con las funciones fopen() fread() y fclose(). Ejemplo en samples\Browses\TextBrowser (y éste sí que es instantáneo)
Saludos
MemoRead() es una función de Harbour y no de Xailer. Y por supuesto, Xailer no hace ningún tipo de hack en Harbour para cambiar su comportamiento.
En cualquier caso no es muy aconsejable lo que está haciendo y dudo mucho que Harbour (con o sin Xailer) lo abra al vuelo sin pestañear. Hay que abrirlo poco a poco con las funciones fopen() fread() y fclose(). Ejemplo en samples\Browses\TextBrowser (y éste sí que es instantáneo)
Saludos
-
- Mensajes: 100
- Registrado: Vie Abr 10, 2009 11:02 pm
Re: Problema de memoria
Ignacio Gracias,
con lo que me has comentado he llegado a la conclusión que es la única solución, he implementado una clase para la lectura a trozos
del fichero con fread, y ya funciona decentemente.
Realmente ha sido muy complejo, porque era un fichero en Json y además no puedo leer partiendo ningún registro, ya que luego, tengo
que insertar cada registro en SQL, completos, por supuesto.
Pero bueno resuelto y muchas gracias.
con lo que me has comentado he llegado a la conclusión que es la única solución, he implementado una clase para la lectura a trozos
del fichero con fread, y ya funciona decentemente.
Realmente ha sido muy complejo, porque era un fichero en Json y además no puedo leer partiendo ningún registro, ya que luego, tengo
que insertar cada registro en SQL, completos, por supuesto.
Pero bueno resuelto y muchas gracias.
Un Saludo,
Joaquín Martínez
Joaquín Martínez