Korzystanie z okna stosów równoległych
Stosów równoległych okno to jest przydatne podczas debugowania aplikacji wielowątkowych.Jego Widoku wątków pokazuje informacje stosu wywołań dla wszystkich wątków w aplikacji.Umożliwia to przechodzenie między wątkami i ramek stosu na tych wątków.W kodzie zarządzanym Widoku zadania pokazuje wywołania stosy Task obiektów.W kodzie macierzystym Widoku zadania pokazuje wywołania stosy grup zadań, Algorytmy równoległe, asynchronicznego agenci, i lekki zadania.
Widok wątków
Na poniższej ilustracji przedstawiono jeden wątek, który wzrósł z głównym A do B, a następnie do niektórych kodu zewnętrznego.Dwa inne wątki uruchomić z zewnętrznego kodu i następnie udał się do A, ale jeden z wątków nadal do B, a następnie do zewnętrznego kodu i innego wątku nadal C, a następnie na niektóre AnonymousMethod.
Na ilustracji ścieżka wywołania bieżącego wątku jest zaznaczone na niebiesko, a ramki stosu aktywny jest oznaczona żółtą strzałkę.Bieżącej ramki stosu można zmienić, wybierając inną metodę w Stosów równoległych okna.Może to spowodować również przełączyć bieżący wątek, w zależności od tego, czy wybrana metoda jest częścią bieżącego wątku już lub inny wątek.W poniższej tabeli opisano główne cechy Stosów równoległych okna, jak pokazano na ilustracji.
Objaśnienie list |
Nazwa elementu |
Opis |
---|---|---|
A |
Segment stosu wywołanie lub węzeł |
Zawiera szereg konteksty metoda dla jednego lub więcej wątków.Jeśli węzeł nie ma strzałki wierszy podłączonymi do niego, to reprezentuje wywołanie całą ścieżkę (y). |
B |
Niebieskie |
Wskazuje ścieżkę wywołania bieżącego wątku. |
C |
Linie strzałek |
Podłącz węzły do sporządzenia wywołanie całą ścieżkę (y). |
D |
Etykietka narzędzia węzła nagłówka |
Zawiera identyfikator i nazwę użytkownika każdego wątku, którego ścieżka wywołanie akcji tego węzła. |
E |
Metoda kontekstu |
Reprezentuje jedną lub więcej ramek stosu w tej samej metody. |
F |
Etykietka narzędzia w kontekście metody |
W widoku wątków, pokazuje wszystkie wątki w tabeli podobny do wątki okna.W widoku zadań, pokazuje wszystkie zadania w tabeli podobny do Zadań równoległych okna. |
Ponadto, pokazuje Okno stosów równoległych Widok z lotu ptaka ikona w okienku głównym, gdy wykres jest zbyt duży, aby zmieścić w oknie.Można kliknąć ikonę, aby zobaczyć cały wykres w oknie.
Metoda kontekstu ikony
W poniższej tabeli opisano ikony, które zawierają informacje o ramkach aktywnych i bieżącego stosu:
Ikona |
Opis |
Wskazuje, że kontekst metoda zawiera ramek stosu active bieżącego wątku. |
|
Wskazuje, że kontekst metoda zawiera ramki active stosu wątku długoterminowe. |
|
Wskazuje, że kontekst metoda zawiera bieżącej ramki stosu.Nazwa tej metody jest pogrubiony w wszystkich węzłów, w których występuje. |
Formanty paska narzędzi
Poniższej ilustracji i tabeli opisano formanty, które są dostępne na pasku narzędziowym stosów równoległych.
Objaśnienie list |
Formant |
Opis |
---|---|---|
A |
Pole kombi wątków/zadania |
Przełączniki widok między stosy wątków wywołań i stosy zadań wywołań.Aby uzyskać więcej informacji zobacz temat widok zadań i wątków. |
B |
Pokaż tylko oflagowane |
Stosy wywołań pokazuje tylko dla wątków, które są oznaczane w innych oknach debugowania, takie jak Wątki GPU okna i Oglądać równoległego okna. |
C |
Przełącz widok metoda |
Przełącza między widokiem stosu i metody.Aby uzyskać więcej informacji zobacz metodę widoku. |
D |
Autoprzewijanie do bieżącej ramki stosu |
Autoscrolls diagram, tak aby bieżącego stosu ramki jest w widoku.Ta funkcja przydaje się podczas bieżącej ramki stosu są zmiany z innymi oknami lub uderzanie nowy punkt przerwania w dużych diagramów. |
E |
Przełącznik sterujący powiększenia |
Pokazuje lub ukrywa element sterujący powiększenia.Można również powiększyć, naciskając klawisz CTRL i obracając kółko myszy, bez względu na widoczność formantu powiększenia. |
Elementy Menu kontekstowego
Poniższej ilustracji i tabeli opisano elementy menu skrótów, które są dostępne po kliknięciu prawym przyciskiem myszy w kontekście metoda w widoku wątków lub w widoku zadania.Ostatnie sześć elementów są pożyczone bezpośrednio z poziomu okna stos wywołań i wprowadzenia nie nowe zachowanie.
Element menu |
Opis |
---|---|
Flaga |
Flagi wybranego elementu. |
Usuń flagę |
Unflags wybranego elementu. |
Zablokuj |
Zawiesza się zaznaczony element. |
Rozmrażanie |
Odblokowuje zaznaczony element. |
Przejdź do zadania (wątku) |
Pełni tę samą funkcję, co pole kombi na pasku narzędzi, ale zachowuje sama ramka stosu wyróżniony. |
Przejdź do kodu źródłowego |
Powoduje przejście do lokalizacji w kodzie źródłowym, który odpowiada stosu ramki, w której użytkownik kliknął prawym przyciskiem myszy. |
Przełącz się do ramki |
Tak samo jak odpowiednie polecenie menu w oknie wywołanie stosu.Jednak ze stosów równoległych wiele ramek może odpowiadać kontekście jednej metody.W związku z tym element menu ma podmenu, z których każdy reprezentuje ramki określonego stosu.Jeśli jedną z ramek stosu jest w bieżącym wątku, menu, który odpowiada tej ramki stosu jest zaznaczone. |
Przejdź do dekompletacji |
Powoduje przejście do lokalizacji w oknie demontażu, który odpowiada stosu ramki, w której użytkownik kliknął prawym przyciskiem myszy. |
Pokaż kod zewnętrzny |
Pokazuje lub ukrywa kodu zewnętrznego. |
Wyświetlacz szesnastkowy |
Przełącza pomiędzy wyświetlania dziesiętnej i szesnastkowej. |
Informacje dotyczące załadowania symbolu |
Wyświetla odpowiednie okno dialogowe. |
Ustawienia symbolu |
Wyświetla odpowiednie okno dialogowe. |
Widok zadania
Jeśli aplikacja korzysta Task obiektów (kod zarządzany) lub task_handle obiektów (kodu macierzystego) wyrazić równoległości służy pole kombi, na pasku narzędzi Okno stosów równoległych Aby przełączyć się do Widoku zadania.Widok zadania pokazuje stosy wywołań zadań zamiast wątków.Widok zadań różni się od widoku wątków w następujący sposób:
Stosy wywołań wątki, które nie są uruchomione zadania nie są wyświetlane.
Stosy wywołań wątków, które są uruchomione zadania są przycięte wizualnie na górze i na dole, aby pokazać najbardziej odpowiednich klatek, które odnoszą się do zadania.
Gdy wielu zadań na jednym wątku, stosy wywołań tych zadań są dzielone na osobne węzły.
Na poniższej ilustracji przedstawiono widoku zadania stosów równoległych po prawej stronie i odpowiedni widok wątków po lewej stronie.
Aby zobaczyć stos wywołań całego, przełącz się do widoku wątków ramki stos prawym przyciskiem myszy, a następnie klikając polecenie Przejdź do wątku.
Zgodnie z opisem w tabeli wcześniejszych poprzez najechanie wskaźnikiem myszy kontekście metoda, można przeglądać dodatkowe informacje.Na poniższej ilustracji przedstawiono informacje w etykietce narzędzia dla widoku wątków i w widoku zadania.
Metoda widoku
Z widoku wątków lub widoku zadania można przestawiać wykres na bieżącą metodę klikając ikonę metoda widoku na pasku narzędzi.Metoda widok pokazuje w skrócie wszystkich metod na wszystkie wątki, które są wywoływane przez bieżącą metodę albo zadzwonić.Następująca ilustracja pokazuje widok wątków, a także wygląd tych samych informacji w widoku metod.
Po przełączeniu do nowej ramki stosu, możesz spowodować tej metody bieżącej metody i okna, aby pokazać wywołującym i callees dla nowej metody.Może to powodować pewne wątki wyświetlone lub znikają z widoku, w zależności od tego, czy metoda ta pojawia się na ich stosy wywołań.Aby powrócić do widoku stosu, kliknij ponownie przycisk paska narzędzi widoku metod.
Zobacz też
Zadania
Wskazówki: debugowanie aplikacji równoległych
Wskazówki: debugowanie aplikacji równoległych