Udostępnij przez


Tryby operacyjne

Istnieją trzy tryby, w których środowisko IDE może działać w następujący sposób:

  • Tryb projektowania

  • Tryb uruchamiania

  • Tryb przerwania

    Sposób, w jaki niestandardowy aparat debugowania (DE) przechodzi między tymi trybami, to decyzja implementacyjna, która wymaga od ciebie znajomości mechanizmów tego przejścia. De może lub nie może bezpośrednio implementować tych trybów. Te tryby to w rzeczywistości tryby debugowania pakietów, które przełączają się w zależności od działań użytkownika lub zdarzeń pochodzących z DE (środowiska graficznego). Na przykład przejście z trybu uruchamiania na tryb przerwania jest wywoływane przez zdarzenie zatrzymania z DE. Przejście z przerwy do trybu uruchamiania lub trybu kroku jest podżegane przez użytkownika wykonującego operacje, takie jak Krok lub Wykonaj. Aby uzyskać więcej informacji o przejściach DE, zobacz Kontrola wykonywania.

Tryb projektowania

Tryb projektowania to stan, w którym debugowanie w Visual Studio się nie odbywa, podczas którego można ustawić ustawienia debugowania w aplikacji.

Tylko kilka funkcji debugowania jest używanych w trybie projektowania. Deweloper może wybrać ustawienie punktów przerwania lub utworzenie wyrażeń śledzenia. De nigdy nie jest ładowany lub wywoływany, gdy środowisko IDE jest w trybie projektowania. Interakcja z de odbywa się tylko podczas trybów uruchamiania i przerwania.

Tryb działania

Tryb uruchamiania występuje, gdy program jest uruchamiany w sesji debugowania w środowisku IDE. Aplikacja działa aż do zakończenia, osiągnięcia punktu przerwania lub zgłoszenia wyjątku. Gdy aplikacja działa aż do zakończenia, DE przechodzi do trybu projektowania. Gdy punkt przerwania zostanie trafiony lub zostanie zgłoszony wyjątek, DE przechodzi do trybu przerwania.

Tryb przerwania

Tryb przerwania występuje, gdy wykonywanie programu debugowania jest zawieszone. Tryb przerwania oferuje deweloperowi migawkę aplikacji w momencie przerwania i umożliwia deweloperowi analizowanie stanu aplikacji i zmienianie sposobu działania aplikacji. Deweloper może wyświetlać i edytować kod, badać lub modyfikować dane, ponownie uruchomić aplikację, zakończyć wykonywanie lub kontynuować wykonywanie z tego samego punktu.

Tryb zatrzymania jest wprowadzany, gdy DE wysyła synchroniczne zdarzenie zatrzymania. Synchroniczne zdarzenia zatrzymywania, nazywane również zdarzeniami zatrzymywania, powiadamiają menedżera debugowania sesji (SDM) i środowisko IDE, że aplikacja, której debugowanie jest w toku, przestała wykonywać kod. Interfejsy IDebugBreakpointEvent2 i IDebugExceptionEvent2 to przykłady zatrzymywania zdarzeń.

Zatrzymanie zdarzeń jest kontynuowane przez wywołanie jednej z następujących metod, które przechodzą debuger z trybu przerwania do uruchamiania lub trybu kroku:

Tryb kroku

Tryb krokowy występuje, gdy program przechodzi do następnego wiersza kodu, wchodzi do funkcji, pomija ją lub wychodzi z niej. Krok jest wykonywany przez wywołanie metody Step. Ta metoda wymaga DWORDparametrów, które określają wyliczenia STEPUNIT i STEPKIND jako parametry wejściowe.

Gdy program pomyślnie przechodzi do następnego wiersza kodu lub do funkcji, albo jest uruchamiany do kursora lub ustawionego punktu przerwania, DE automatycznie przechodzi z powrotem do trybu wstrzymania.

Zobacz także