![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
![]() |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
|
|
#1
|
||||
|
||||
|
Y pasa lo mismo si lo ejecutas en 64 bits?
Podrias mostrar un ejemplo de que datos estas manejando?
__________________
El malabarista. |
|
#2
|
||||
|
||||
|
jularaXD,
Cita:
1- Revisa los Msg #35, #36 y #37 del hilo Tail -f en Delphi. 2- El Msg #35 contiene un programa que permite detectar cambios en un directorio a nivel de sus archivos y del directorio en si mismo, se puede utilizar para detectar cambios en un archivo y de esta forma realizar las acciones que sean pertinentes. 3- El Msg #36 es una especialización del programa del Msg#35 para detectar las líneas adicionadas a un archivo, el Msg #37 es una mejora del código del Msg #36. La idea es la siguiente: 1- Detectar que archivos han tenido cambios en un directorio. 2- Cargar uno a uno los archivos en memoria que tuvieron cambios. 3- Realizar las acciones correspondientes en los archivos cargados y liberar el archivo de memoria. Para el procesamiento de los archivos te sugiero procesarlos por medio de la clase TFileStream, es muy versátil para el manejo de archivos. Nota: En términos generales, es conveniente procesar los archivos por registros, esto consume menos memoria y permite el manejo de archivos independientemente de su tamaño (El tamaño solo queda restringido por las limitaciones del Sistema Operativo y el Hardware). Revisa esta información: Espero sea útil ![]() Nelson. Última edición por nlsgarcia fecha: 06-04-2014 a las 02:17:32. |
|
#3
|
||||
|
||||
|
Hola jularaXD.
Mas allá del tamaño de tu arreglo en memoria (50000*6*11 = 33.14713 Mb), podría suceder que mas adelante se les ocurra pedirte que obtengas el valor de una monitorización de un año atrás... Entonces tendrás para manejar 397,69 Mb aprox. Como sugirió Lepe, lo podes gestionar de manera sencilla usando listas dinámicas como en este esbozo al vuelo: también con un árbol binario de búsqueda o un arreglo de apuntadores, cada una con sus pros y contras. Estas soluciones han sido (y son), usadas como las mejores en los procesamientos de arreglos casi vacíos, vg.: planillas de cálculo. O también,como sugirió duiliosola, mediante un archivo de acceso directo :
Pero en términos de simpleza, fiabilidad y escalabilidad pienso que almacenar esos valores de monitorización como campos de una tabla de una base de datos tampoco es mala idea. Saludos ![]()
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... |
|
#4
|
|||
|
|||
|
Muchas gracias a todos por vuestras respuestas y disculpad el retraso, que este fin de semana he estado muy liado...
Ahora me voy a poner a rehacer el código a ver con que método me quedare, supongo con el de las listas dinámicas, ya que me iría bien un algoritmo de ordenación, pero la verdad es que todos me van a servir en algún momento u otro. Salu2 |
|
#5
|
||||
|
||||
|
jularaXD,
Cita:
El código anterior inicializa a blancos un arreglo de dos dimensiones de tipo String[10]. Espero sea útil ![]() Nelson. |
|
#6
|
||||
|
||||
|
jularaXD,
Cita:
El código anterior permite cargar dinámicamente un archivo en disco a memoria utilizando solo la memoria mínima requerida, procesar el mismo y liberar la memoria al finalizar el proceso, esto es una alternativa al concepto de un arreglo de registros. En el caso de querer procesar un registro particular, por ejemplo el número 11 (Los registros se numeran de 0 a n) se puede ir directamente a este por medio del siguiente código: Nota: El código sugerido fue probado con un archivo de texto de 100.000 Registros con un tiempo de proceso en el orden de las milésimas de segundos. Espero sea útil ![]() Nelson. Última edición por nlsgarcia fecha: 07-04-2014 a las 02:51:22. |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Stack Overflow | Guillermo80 | Varios | 10 | 01-06-2008 22:41:36 |
| stack overflow | juan francisco | Varios | 6 | 28-05-2008 23:26:15 |
| Stack overflow | aonarres | API de Windows | 5 | 29-02-2008 14:07:11 |
| Stack Overflow | agonzalez | Varios | 5 | 08-12-2006 23:26:46 |
| Stack Overflow | Mariana | Varios | 14 | 30-10-2003 12:37:47 |
|