2015-08-20 21 views
15

Sto cercando di utilizzare profiler da Visual Studio 2015 comunitario per l'utilizzo della CPU, e tutto quello che ottiene è solo il mio exe e [codice esterno], nient'altro: profiler resultstudio visivo 2015 profiler non mostrando nulla dal mio codice

C'è un file pdb generato, e ho provato a pulire e ricostruire il mio progetto, disabilitato solo il mio codice; qualcuno potrebbe aiutarmi? Grazie.

+1

Hai risolto questo problema in qualche modo? Ho lo stesso problema .. – Alex

+1

In realtà, la modifica del target in Applicazione (exe) anziché in Progetto di avvio sembra funzionare. – Alex

+0

@Alex, se vado a Debug -> Avvia strumenti di diagnostica senza debugger e da lì selezionare Utilizzo CPU, ho riscontrato questo problema, la soluzione per me era selezionare Performance Wizard, e da lì selezionare Utilizzo CPU o qualsiasi altra opzione. – Silencer

risposta

17

Prova questo: Debug -> Start Diagnostic Tools Without Debugger e da lì selezionare Performance Wizard anziché CPU Usage, e solo da lì selezionare CPU o altra opzione necessaria, questo ha risolto il problema nel mio caso.

+6

"Utilizzo CPU" deve essere deselezionato, altrimenti la casella di controllo "Procedura guidata esecuzione" è disabilitata. –

+0

Non ho l'opzione * Avvia strumenti di diagnostica senza debugger * nel menu Debug in VS2015. Come posso trovarlo? – meJustAndrew

+0

Purtroppo non sembra esserci alcun modo per collegarsi a un processo in esecuzione che lo utilizza. Quindi se hai un servizio che VS non può avviare, questo strumento è senza speranza. – Owl

9

La risposta accettata non ha funzionato per me, nel mio caso il problema sembra essere che non avevo le informazioni di debug generate nel mio file di database del programma.

La correzione di cui avevo bisogno era di cambiare Configuration Properties → Linker → Debugging → Generate Debug Info in Yes per la mia configurazione di Rilascio, quindi ricompilare tutto.

2

Nel mio caso il problema è stato risolto selezionando l'opzione "Abilita stepping di origine .net Framework" in Strumenti> Opzioni> Debug> Generale. Ciò disabiliterà anche "Abilita solo il mio codice".

In una nota a margine, sembra che il profiler VS2015 non sia particolarmente efficace nell'individuare i problemi del finalizzatore se ci sono molti oggetti disponibili che non vengono mai distribuiti esplicitamente (causando un sovraccarico del thread del finalizzatore). Ho usato JetBrain dotTrace che ha evidenziato questo problema.

0

Ho trovato questo thread e ho trovato una soluzione ... Almeno nell'aggiornamento 3 VS2015, il menu a discesa Diagnostic Tools -> CPU Usage -> Filter ha una casella di controllo "Mostra codice esterno", che quando selezionata espande tutti i segnaposti [External Code].

+0

Questo mostra il tempo del codice esterno, ma nessuna informazione sulla durata del codice per l'esecuzione. – Owl