ho incontrato il seguente paragrafo:debug vs prestazioni di uscita
“Debug contro l'impostazione di uscita nell'IDE quando si compila il codice in Visual Studio fa quasi nessuna differenza di prestazioni ... il codice generato è quasi la stessa. Il compilatore C# non esegue alcuna ottimizzazione. Il compilatore C# sputa solo IL ... e al runtime è il JITer che fa tutto l'ottimizzazione. Il JITer ha una modalità Debug/Release e questo fa una grande differenza per le prestazioni. Ma questo non tasto OFF se si esegue il debug o rilascio di configurazione del progetto, che le chiavi fuori se un debugger è collegato.”
La fonte è here e il podcast è here.
Qualcuno può indirizzarmi a un articolo di Microsoft che può effettivamente provarlo?
Googling "C# di debug vs prestazioni rilascio" per lo restituisce i risultati dicendo "Debug ha un sacco di prestazioni colpito", "rilascio è ottimizzato", e "non distribuire il debug alla produzione" .
possibile duplicato di [differenze di prestazioni tra build di debug e release] (http://stackoverflow.com/questions/4043821/performance-differences-tra between-debug-and-release-builds) –
Con .Net4 su Win7-x86 , Ho un programma CPU limitato che ho scritto che gira quasi 2 volte più veloce in versione di debug senza affermazioni/etc nel ciclo principale. – Bengie
Inoltre, se ti interessa l'uso della memoria, ci possono essere grandi differenze. Ho visto un caso in cui un servizio Windows a più thread compilato in modalità Debug utilizzava 700 MB per thread, contro 50 MB per thread nella versione Release. La build di Debug ha esaurito rapidamente la memoria in condizioni di utilizzo tipiche. –