Estamos en una etapa de definición de estrategias para satisfacer las necesidades de nuestros clientes. Nuestros desarrollos hacen mucho uso de archivos de texto para comunicación con velneo. Como prueba se realizó lo siguiente:
En v6 tengo un proceso que limpia una tabla temporal, conecta con una dll, espera la respuesta, lee el resultado de un archivo de texto, llena la tabla temporal con el contenido del archivo de texto y al final elimina el archivo de texto. El mapa contiene además muchas tablas más, contenido visual, etc.
Resultado después de 10 ejecuciones, 1600 registros en archivo de texto:
Tiempo de proceso promedio: 5 segundos
Consumo de memoria inicial vRunner: 9.5 mb
Consumo de memoria final: 11 mb
Consumo de CPU máximo: hasta 19% menos de un segundo
En v7 programé un proceso que limpia una tabla temporal, lee un archivo de texto y llena la tabla temporal con el contenido del archivo de texto. Como se ve no están todos los pasos necesarios -conexión con dll-, pero son suficientes para la prueba.
Tiempo promedio: 6.5 segundos -sin conexión y espera de resultado de dll-
Consumo de memoria inicial vClient: 15.6mb
Por cada ejecución de importación aumentaba 10.5mb
Llegó hasta los 113mb y seguiría subiendo por cada ejecución del proceso.
Consumo de CPU máximo: 60% de CPU durante 2 segundos promedio
Quizá lo del tiempo se puede soslayar, pero el consumo de memoria y CPU me parece voraz.
¿Es un error el que no libere memoria y consuma tanto CPU? ¿seguirá así?