Dela via


Driftlägen

Det finns tre lägen där IDE kan användas enligt följande:

  • Designläge

  • Körningsläge

  • Brytläge

    Hur din anpassade felsökningsmotor (DE) övergår mellan dessa lägen är ett implementeringsbeslut som kräver att du är bekant med övergångsmekanismerna. DE kan eller kanske inte implementerar dessa lägen direkt. Dessa lägen är verkligen felsökningspaketlägen som växlar baserat på användaråtgärder eller händelser från DE. Övergången från körningsläge till avbrottsläge initieras till exempel av en stopphändelse från DE. Övergången från paus till antingen körningsläge eller stegläge initieras av användaren som utför åtgärder som Steg eller Kör. Mer information om DE-övergångar finns i Kontroll av körning.

Designläge

Designläget är det icke-körande tillståndet för Visual Studio-felsökning, under vilken tid du kan ange felsökningsfunktioner i ditt program.

Endast ett fåtal felsökningsfunktioner används i designläge. En utvecklare kan välja att ange brytpunkter eller skapa klockuttryck. DE läses aldrig in eller anropas när IDE:t är i designläge. Interaktion med DE sker endast under körnings- och avbrottslägen.

Körningsläge

Körningsläget inträffar när ett program körs i en felsökningssession i IDE. Programmet körs tills det avslutas, tills en brytpunkt nås eller tills ett undantag utlöses. När programmet körs tills det avslutas övergår DE till designläge. När en brytpunkt träffas eller ett undantag utlöses övergår DE till brytläge.

Brytläge

Avbrottsläget inträffar när körningen av felsökningsprogrammet pausas. I avbrottsläget får utvecklaren en ögonblicksbild av programmet vid tidpunkten för pausen och utvecklaren kan analysera programmets tillstånd och ändra hur programmet ska köras. Utvecklaren kan visa och redigera kod, granska eller ändra data, starta om programmet, avsluta körningen eller fortsätta körningen från samma punkt.

Brytläge anges när DE skickar en synkron stopphändelse. Synkrona stopphändelser, även kallade stopphändelser, meddelar sessionsfelsökhanteraren (SDM) och IDE att programmet som debuggas har slutat köra kod. Gränssnitten IDebugBreakpointEvent2 och IDebugExceptionEvent2 är exempel på stopphändelser.

Stopphändelser fortsätter med ett anrop till någon av följande metoder, som övergår felsökaren från avbrottsläge till körnings- eller stegläge:

Stegläge

Stegläge inträffar när programmet stegar till nästa kodrad, eller till, över eller ut ur en funktion. Ett steg körs genom att anropa metoden Steg. Den här metoden kräver DWORDs som anger STEPUNIT - och STEPKIND-uppräkningar som indataparametrar.

När programmet framgångsrikt kliver till nästa kodrad eller in i en funktion, eller körs till markören eller till en uppsättning brytpunkter, återgår DE automatiskt till brytläge.

Se även