Tengo un programa que se ejecuta bastante lento (tarda unos 20 segundos incluso en el lanzamiento) así que, queriendo arreglarlo, traté de usar el generador de perfiles integrado de Visual Studio. Sin embargo, cuando ejecuto el programa con el perfil habilitado, finaliza en menos de un segundo. Esto hace que sea muy difícil encontrar un cuello de botella. Publicaba el código pero es largo. ¿Hay alguna razón obvia o no tan obvia de por qué esto estaría sucediendo?¿Por qué mi programa se ejecuta mucho más rápido cuando habilito la creación de perfiles?
EDIT: Ok, reduje el problema a un grupo de llamadas gratuitas(). Cuando los comente, el programa se ejecuta en la misma cantidad de tiempo que lo hace con el perfil habilitado. Pero ahora tengo una pérdida de memoria: -/
Posiblemente sea una forma extraña de efecto Heisenberg (http: // en.wikipedia.org/wiki/Werner_Heisenberg). Sabe que estás mirando y se pone de pie y se pone a trabajar. :-) –
Supongo que sucede por la misma razón que el error que siempre ocurre en el mismo punto del programa, excepto cuando lo ejecuta en el depurador. – sepp2k