Velocidad 2 Proyectos diferentes o Todo en una misma solucion??

Iniciado por rigorvzla, 22 Diciembre 2017, 13:46 PM

0 Miembros y 1 Visitante están viendo este tema.

rigorvzla

Bueno, mi consulta es la siguiente, quisiera saber si el rendimiento de un programa mejora en estas condiciones:

Caso 1: El primer programa que realice hacia muchas referencias a archivos externos TXT y al ponerlo en funcionamiento el tiempo de reaccion era ciertamente lento.

Caso 2: Descarte la primera opcion y realice desde cero este segundo, las referencias que hacia a archivos externos, la utilice dentro de la misma solucion como "clases", esto mejoro enormemente el tiempo de respuesta, aciendolo mas corto osea mas rapido cumplir la accion cuando uno la ejecutaba.

Actualmente llamo programas externos desde la solucion osea (archivos .exe) y mi pregunta radica en este punto.

Caso 3: Realizar el programa desde cero nuevamente y los archivos exe que llama , crearlos en la misma solucion, para no llamar al exe , de forma externa si no llamarlo desde dentro de la solucion, en caso de ser posibole  mejoraria el rendimiento del programa respecto a velocidad de respuesta??

Nota: Actualmente mi programa funciona solamente en mi pc y no en otras computadoras, cosa que quiero resolver y no encuentro como , si alguien tiene una sugeencia estaria perfecto.

Eleкtro

#1
Cita de: rigorvzla en 22 Diciembre 2017, 13:46 PMlas referencias que hacia a archivos externos, la utilice dentro de la misma solucion como "clases"

A menos que intentes explicarte mejor usando otras palabras... no entiendo muy bien a que te refieres, ¿que es eso de convertir referencias de archivos de texto, a clases?. De todas formas te puedo decir que trabajar con operaciones I/O de lectura sobre archivos locales por supuesto es más lento que trabajar con el bloque de asignación de memoria de tu programa.




Cita de: rigorvzla en 22 Diciembre 2017, 13:46 PMlos archivos exe que llama , crearlos en la misma solucion, para no llamar al exe

Esto tampoco se lo que significa, se puede interpretar de varias maneras, pero bueno, el procedimiento necesario para crear el proceso de un executable, e inicializarlo (esté ubicado el .exe donde lo esté), ya es considerablemente mucho más lento que realizar otras cosas, como por ejemplo podría ser llamar a una función aleatoria de tu programa y esperar el valor de retorno (una función de la librería 7z.dll, por ejemplo), y si además te pones a capturar la salida del programa para controlar el porcentaje de progreso, el tiempo total de ejecución hasta finalizar la operación se incrementará aun más. Aunque para hacer una comparación de velocidad en condiciones, habría que ver el código fuente para poder tener en cuenta factores importantes... como la complejidad ciclomática de los métodos/funciones de un programa, la administración de recursos del programa, y en general lo bien o lo mal que estén programadas las funcionalidades del programa.

De forma genérica o superficial te puedo decir que si quieres acelerar algún procedimiento de tu programa, entonces podrías aplicar los principios de la programación asincrónica, multi hilo, paralelismo. Pero depende de para que cosa.

Cita de: rigorvzla en 22 Diciembre 2017, 13:46 PMNota: Actualmente mi programa funciona solamente en mi pc y no en otras computadoras, cosa que quiero resolver y no encuentro como , si alguien tiene una sugeencia estaria perfecto.

La única solución es que depures el código. Si todavía no solucionaste los errores, si quieres puedes pasarme el código fuente por mensaje privado, si no me funciona en mi PC intentaré averiguar el motivo. Y dime que versión de Windows estás utilizando en tu PC.

Saludos








rigorvzla

tus conceptos me dieron una idea y por ende una respuesta , gracias elektro y claro , puedo compartir el codigo basicamente es una vetana y la q me da ese error y tambien el mismo en otros modulos asi que con uno solo basta para buscar el problema general .

Gracias nuevametne espera el codigo en un instante