Znaczniki wizualizatora współbieżności
W wizualizatorze współbieżności znaczniki to ikony reprezentujące zdarzenia w aplikacji. Zazwyczaj aplikacja generuje te zdarzenia w celu wyznaczenia faz lub wystąpień w aplikacji. Zdarzenia mogą być generowane przez aplikację lub biblioteki i środowiska uruchomieniowe używane przez aplikację.
Rodzaje znaczników
Wizualizator współbieżności używa trzech rodzajów znaczników do reprezentowania zdarzeń aplikacji: flag, komunikatów i zakresów.
Użyj flagi, aby wskazać interesujący punkt w czasie w aplikacji. Możesz na przykład użyć flagi, aby przedstawić, że wartość zmiennej osiągnęła określony próg lub że został zgłoszony wyjątek.
Komunikat oznacza również punkt w czasie, ale można go użyć do śledzenia stylu dziennika. Na przykład to, co mogło zostać po cenach dumpingowych do pliku dziennika, można teraz opakowować w wywołaniu komunikatu, aby można było go śledzić i wyświetlać w wizualizatorze współbieżności. Możesz również użyć wizualizatora współbieżności, aby wyeksportować te dane do pliku CSV.
Zakres reprezentuje interwał czasu w aplikacji, na przykład jedną z jej faz.
Łączenie znacznika z wątkami
Każdy wątek, który generuje znaczniki, ma oddzielny kanał osi czasu. Identyfikator wątku odpowiedzialnego za generowanie zdarzeń znacznika jest wyświetlany obok opisu kanału znacznika. Identyfikator wyświetlany po lewej stronie kanału znacznika odpowiada identyfikatorowi innego wątku w bieżącym procesie.
Ważność znacznika
Znaczniki mogą mieć jeden z czterech poziomów ważności: niski, normalny, wysoki i krytyczny. Źródła znaczników można filtrować na podstawie poziomu ważności. Jeśli na przykład chcesz wyświetlić tylko znaczniki z określonego źródła, które ma normalne lub krytyczne znaczenie, możesz skonfigurować filtr w oknie dialogowym Zaawansowane Ustawienia. Ważność znacznika jest wyświetlana w etykietce narzędzia i w raporcie znaczników.
Kategoria znacznika
Kategoria znacznika wskazuje grupę zdarzeń znaczników, które pochodzą z tego samego źródła. Wizualizator współbieżności używa koloru do rozróżniania różnych kategorii flag i zakresów. Wizualizator współbieżności można skonfigurować tak, aby używał kategorii do filtrowania zdarzeń znacznika od określonego dostawcy zdarzeń. Aby skonfigurować filtr, użyj okna dialogowego Zaawansowane Ustawienia.
Znane źródła znaczników
Każdy dostawca ETW może generować znaczniki, o ile dostawca przestrzega określonych ograniczeń. Wizualizator współbieżności można skonfigurować tak, aby nasłuchiwać dodatkowych źródeł zdarzeń dla znaczników. Domyślnie nasłuchuje tych źródeł zdarzeń:
C++ AMP (C++ Accelerated Massive Parallelism)
Za pomocą karty Znaczniki w oknie dialogowym Zaawansowane Ustawienia można kontrolować, czy znaczniki z różnych źródeł są wyświetlane w wizualizatorze współbieżności i można filtrować znaczniki na podstawie ważności i kategorii.
Znaczniki z usługi EventSource
Wizualizator współbieżności może również wyświetlać zdarzenia EventSource. Aby uzyskać więcej informacji, zobacz Visualize EventSource events as markers (Wizualizowanie zdarzeń usługi EventSource jako znaczniki).
Znaczniki flag
Znacznik flagi reprezentuje coś, co wystąpiło natychmiast w czasie w aplikacji. Flaga może reprezentować wiele rodzajów zdarzeń aplikacji. Na przykład flaga może być wyświetlana, gdy określony element roboczy został zaplanowany lub kiedy został zgłoszony wyjątek. Środowiska uruchomieniowe, takie jak biblioteka równoległa zadań, mogą również generować flagi.
Ważność flagi
Flagi są wyświetlane w różnych rozmiarach w zależności od ich ważności. Podobnie jak każdy znacznik, ważność może być niska, normalna, wysoka lub krytyczna. Na tej ilustracji przedstawiono wygląd znaczników według poziomu ważności:
Kategoria flagi
Flaga jest wyświetlana w jednym z pięciu różnych kolorów w zależności od jego kategorii. Kolory są ponownie używane, jeśli istnieje więcej niż pięć kategorii. Nie można wybrać koloru. Podobnie jak dowolny znacznik, kategoria może być dowolną liczbą całkowitą. Na następnej ilustracji przedstawiono kolory dla pierwszych pięciu kategorii.
Alerty
Alert jest czerwoną flagą reprezentującą krytyczne zdarzenie aplikacji, takie jak wyjątek. Oto alert:
Flagi agregacji
Czasami flagi występują tak blisko siebie w wizualizatorze współbieżności, że nie można ich narysować indywidualnie. W takim przypadku jest wyświetlana szara flaga agregacji reprezentująca flagi bazowe. Gdy wskaźnik spoczywa na jednej z tych ikon, etykietka narzędzia wyświetla liczbę reprezentowanych flag bazowych. Aby wyświetlić flagi, powiększ. Jeśli powiększ całą drogę i nadal uzyskasz flagę agregacji, możesz wyświetlić flagi bazowe w raporcie znaczników.
Flagi agregacji są rysowane w różnych rozmiarach. Rozmiar zależy od poziomu ważności najważniejszej flagi w agregacji. Na poniższej ilustracji przedstawiono flagi agregacji w kolejności rosnącej ważności.
Znaczniki komunikatów
Znacznik komunikatu reprezentuje dane wyjściowe dziennika. Komunikat to ciąg, który jest wystawiany przez określony wątek w określonym czasie. Komunikaty można eksportować do pliku tekstowego do użytku z innymi narzędziami. Wskaźnik można odpocząć w komunikacie w wizualizatorze współbieżności, aby wyświetlić ciąg komunikatu. Możesz również wyświetlić wszystkie znaczniki komunikatów w raporcie Znaczniki. Na poniższej ilustracji przedstawiono znacznik komunikatu.
Znaczniki agregacji komunikatów
Czasami wiele komunikatów występuje tak blisko siebie w wizualizatorze współbieżności, że nie można ich narysować pojedynczo. W takim przypadku jest wyświetlany znacznik agregacji komunikatów reprezentujący komunikaty bazowe. W przypadku odpoczynku wskaźnika na jednej z tych ikon etykietka narzędzia wyświetla liczbę wyświetlanych komunikatów, które są reprezentowane. Aby wyświetlić komunikaty, powiększ. Jeśli powiększasz cały sposób i nadal uzyskujesz znacznik agregacji, możesz wyświetlić bazowe komunikaty w raporcie znaczników.
Znaczniki zakresu
Znacznik zakresu reprezentuje znaczącą fazę aplikacji. Można na przykład użyć zakresu do reprezentowania przedziału czasu, w którym jest przetwarzany określony element roboczy. Jego długość reprezentuje czas trwania odpowiedniej fazy aplikacji. Ta ilustracja przedstawia zakres w wizualizatorze współbieżności:
Kategoria zakresu
Znacznik zakresu jest wyświetlany w jednym z pięciu różnych kolorów, w zależności od jego kategorii. Kolory są powtarzane, jeśli istnieje więcej niż pięć kategorii. Kategoria może być dowolną liczbą całkowitą. Na tej ilustracji przedstawiono pięć możliwych kolorów:
Znaczniki agregacji zakresu
Czasami znaczniki zakresu występują tak blisko siebie w wizualizatorze współbieżności, że nie można ich narysować indywidualnie. W takim przypadku jest wyświetlany szary znacznik agregacji zakresu, który reprezentuje bazowe zakresy. W przypadku odpoczynku wskaźnika na jednej z tych ikon etykietka narzędzia wyświetla liczbę reprezentowanych zakresów bazowych. Aby wyświetlić zakresy, powiększ. Jeśli powiększasz cały sposób i nadal uzyskujesz znacznik agregacji zakresu, możesz wyświetlić bazowe znaczniki zakresu w raporcie znaczników. Na tej ilustracji przedstawiono znacznik agregacji zakresu: