Porady: uruchamianie aplikacji autonomicznej .NET Framework z profilerem do zbierania danych pamięci przy użyciu wiersza polecenia
W tym temacie opisano, jak używać narzędzi wiersza poleceń Visual Studio Profiling Tools do uruchamiania autonomicznych (klient) aplikacji .NET Framework i zbierać dane dotyczące pamięci.
Sesja profilowania składa się z trzech części:
Uruchamianie aplikacji przy użyciu profilera.
Zbieranie danych profilowania.
Kończenie sesji profilowania.
[!UWAGA]
Narzędzia wiersza poleceń dla Profiling Tools znajdują się w podkatalogu \Team Tools\Performance Tools katalogu instalacyjnego Visual Studio.Na komputerach 64-bitowych dostępne są obie 32-bitowe i 64-bitowe wersje narzędzia.Aby użyć narzędzi profilowania z wiersza poleceń, należy dodać ścieżkę narzędzi do zmiennej środowiskowej PATH okna wiersza poleceń lub dodać do niej samo polecenie.Aby uzyskać więcej informacji, zobacz Określanie ścieżki do narzędzi wiersza polecenia narzędzi profilowania.
Uruchamianie aplikacji za pomocą profilera
Aby uruchomić docelową aplikację przy użyciu profilera, należy użyć opcji VSPerfCmd.exe/start i /launch do zainicjowania profilera i uruchomienia aplikacji.Można określić /start i /launch oraz ich odpowiednie opcje w wierszu poleceń.
Można również dodać opcje /globaloff aby wstrzymać zbieranie danych przy uruchomieniu aplikacji docelowej.Następnie należy użyć /globalon, aby rozpocząć zbieranie danych.
Aby uruchomić aplikację przy użyciu profilera
Otwórz okno wiersza poleceń.
Uruchom profiler.Wpisz:
**VSPerfCmd /start:sample /output:**OutputFile [Options]
Opcja /start:sample inicjuje profiler.
Opcja /output**:**OutputFile jest wymagana z opcją /start.OutputFile określa nazwę i lokalizację pliku danych profilowania (.vsp).
Można użyć dowolnej z następujących opcji z opcją /start:sample.
Opcja
Opis
/wincounter:WinCounterPath
Określa licznik wydajności systemu Windows, który ma być zbierany podczas profilowania.
/automark:Interval
Należy używać wyłącznie z /wincounter.Określa liczbę milisekund między zdarzeniami zbierania licznika wydajności systemu Windows.Wartość domyślna to 500ms.
Uruchom aplikację docelową.Wpisz:
VSPerfCmd /launch:appName/gc:{allocation|lifetime}[Options]
Opcja /gc**:**Keyword jest wymagana do zbierania danych pamięci .NET Framework.Parametr słowa kluczowego określa, czy będą zbierane dane alokacji pamięci lub czy będą zbierane dane alokacji pamięci oraz okresu istnienia obiektu.
Słowo kluczowe
Opis
allocation
Zbiera tylko dane alokacji pamięci.
lifetime
Zbiera dane alokacji pamięci i okresu istnienia obiektu.
Można użyć dowolnej z następujących opcji z opcją /launch.
Opcja
Opis
/args:Arguments
Określa ciąg, który zawiera argumenty wiersza polecenia przekazywane do aplikacji docelowej.
Uruchamia docelową aplikację wiersza polecenia w oddzielnym oknie.
/events:Config
Określa zdarzenie Śledzenie zdarzeń systemu Windows (ETW), które mają być zbierane podczas profilowania.Zdarzenia ETW są zbierane w oddzielnym pliku (.etl).
/targetclr:Version
Określa wersję common language runtime (CLR) do profilowania, gdy więcej niż jedna wersja środowiska wykonawczego jest załadowana w aplikacji.
Kontrolowanie zbierania danych
Gdy jest uruchomiona aplikacja docelowa, można kontrolować zbierania danych przez uruchamianie i zatrzymywanie zapisywania danych do pliku przy użyciu 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 uruchamiają i zatrzymują zbieranie danych.Określ każdą opcję w oddzielnym wierszu poleceń.Zbieranie danych można włączać i wyłączać wiele razy.
Opcja
Opis
Uruchamia (/globalon) lub zatrzymuje (/globaloff) zbieranie danych dla wszystkich procesów.
/processon:PIDprocessoff:PID
Uruchamia (/processon) lub zatrzymuje (/processoff) zbieranie danych dla procesu, który jest określony przez identyfikator procesu (PID).
/attach uruchamia zbierania danych dla procesu, który jest określony przez PID (identyfikator procesu)./detach zatrzymuje zbieranie danych dla wszystkich procesów.
Możesz także użyć opcji VSPerfCmd.exe/mark, aby wstawić znacznik programu profilującego do pliku z danymi.Polecenie /mark dodaje identyfikator, sygnaturę czasową i opcjonalny tekst zdefiniowany przez użytkownika.Znaczniki mogą być używane od filtrowania danych.
Kończenie sesji profilowania
Aby zakończyć sesję profilowania, profiler musi zostać odłączony od wszystkich profilowanych procesów i musi być jawnie zamknięty.Można odłączyć profiler od aplikacji, która była profilowana przy użyciu metody próbkowania przez zamknięcie aplikacji lub wywołanie opcji VSPerfCmd /detach.Następnie należy wywołać 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 jeden z następujących kroków, aby odłączyć profiler od aplikacji docelowej:
Zamknij aplikację docelową.
-lub-
Wpisz VSPerfCmd /detach
Zamknij profiler.Wpisz:
VSPerfCmd /shutdown
Zobacz też
Koncepcje
Profilowanie wiersza polecenia aplikacji autonomicznych