Porady: dołączanie profilera do aplikacji autonomicznej .NET Framework w celu zbierania danych współbieżności przy użyciu wiersza polecenia
W tym temacie opisano, jak używać narzędzi wiersza poleceń Profiling Tools Visual Studio do dołączania Profilera do uruchomionej autonomicznej aplikacji .NET Framework (klient) i zbierania danych współbieżności procesu i wątku.
[!UWAGA]
Narzędzia wiersza poleceń dla Narzędzi profilowania znajdują się w podkatalogu \Team Tools\Performance Tools katalogu instalacyjnego Visual Studio.Na komputerach 64-bitowych dostępne są obie, 32-bitowa i 64-bitowa wersja narzędzia.Aby użyć narzędzi profilowania z wiersza polecenia, należy dodać ścieżkę narzędzi do zmiennej środowiskowej PATH okna wiersza polecenia lub dodać do niej samo polecenie.Aby uzyskać więcej informacji, zobacz Określanie ścieżki do narzędzi wiersza polecenia narzędzi profilowania.
Gdy profiler jest dołączony do aplikacji, można wstrzymywać i wznawiać zbieranie danych.Aby zakończyć sesję profilowania, Profiler nie może być już dołączony do aplikacji i musi być jawnie zamknięty.
Dołączanie programu Profiler
Aby dołączyć Profiler do działającej aplikacji .NET Framework
Otwórz okno wiersza polecenia.
Uruchom program Profiler.Typ:
VSPerfCmd/start:concurrency **/output:**OutputFile[Options]
Opcja /output**:**OutputFile jest wymagana z /start.OutputFile określa nazwę i lokalizację pliku danych profilowania (vsp).
Możesz użyć dowolnej z następujących opcji z opcją /start:concurrency .
Opcja
Opis
/wincounter:WinCounterPath
Określa licznik wydajności systemu Windows, który ma zbierać dane podczas profilowania.
/automark:Interval
Używaj wyłącznie z /wincounter.Określa liczbę milisekund między zdarzeniami zbierania licznika wydajności systemu Windows.Wartość domyślna to 500 ms.
/zdarzenia:Config
Określa zdarzenie śledzenia zdarzeń systemu Windows (ETW), które mają być zbierane podczas profilowania.Zdarzenia ETW są zbierane w oddzielnym pliku (.etl).
Uruchom aplikację docelową w typowy sposób.
Dołącz profiler do aplikacji docelowej.Typ:
VSPerfCmd /attach:PID [/lineoff] [**/targetclr:**Version]
PID określa identyfikator procesu aplikacji docelowej.W Menedżerze zadań systemu Windows można wyświetlić identyfikatory i nazwy wszystkich uruchomionych procesów.
/lineoff wyłącza kolekcję danych numeru wiersza.
/targetclr**:**Version określa wersję środowiska uruchomieniowego języka wspólnego (CLR) do profilowania, gdy więcej niż jedna wersja środowiska uruchomieniowego jest załadowana w aplikacji.Opcjonalnie.
Kontrolowanie zbierania danych
Gdy uruchomiona jest aplikacja docelowa można kontrolować zbieranie danych przez uruchamianie i zatrzymywanie zapisu danych do pliku za pomocą opcji VSPerfCmd.exe.Kontrolowanie zbierania danych umożliwia zbieranie danych dla określonej części wykonywania programu, takiej jak uruchamianie lub zamykanie aplikacji.
Aby uruchomić i zatrzymać zbieranie danych
Następujące pary opcji VSPerfCmd.exe uruchamiają i zatrzymują zbieranie danych.Określ każdą opcję w oddzielnym wierszu poleceń.Zbieranie danych można wielokrotnie włączać i wyłączać.
Opcja
Opis
Uruchamia (/globalon) lub zatrzymuje (/globaloff) zbieranie danych dla wszystkich procesów.
/processon:PID/processoff:PID
Uruchamia (/processon) lub zatrzymuje (/processoff) zbieranie danych dla procesu określonego przez identyfikator procesu (PID).
/attach uruchamia zbieranie danych dla procesu określonego przez identyfikator procesu (PID) lub nazwę procesu (ProcName)./detach zatrzymuje zbieranie danych dla określonego procesu lub dla wszystkich procesów, jeśli konkretny proces nie jest określony.
Kończenie sesji profilowania
Aby zakończyć sesję profilowania, profiler nie może zbierać danych.Możesz zatrzymać zbieranie danych z aplikacji profilowanej metodą współbieżności przez zamknięcie aplikacji lub wywołanie opcji VSPerfCmd /detach.Następnie wywołujesz opcję VSPerfCmd /shutdown, aby wyłączyć profiler i zamknąć plik danych profilowania.Polecenie VSPerfClrEnv /off czyści zmienne środowiskowe profilowania.
Aby zakończyć sesję profilowania
Wykonaj jedną z następujących czynności, aby odłączyć profiler z aplikacji docelowej.
Typ VSPerfCmd /detach
-lub-
Zamknij aplikację docelową.
Zamknij program Profiler.Typ:
VSPerfCmd/shutdown