DkmClrRuntimeInstance Klasa

Definicja

Reprezentuje wystąpienie CLR działające w procesie docelowym.

         Klasy pochodne: DkmClrNcRuntimeInstance
public ref class DkmClrRuntimeInstance : Microsoft::VisualStudio::Debugger::DkmRuntimeInstance
[System.Runtime.InteropServices.Guid("ea234770-c86f-1706-8842-c6fb5311ba79")]
public class DkmClrRuntimeInstance : Microsoft.VisualStudio.Debugger.DkmRuntimeInstance
[<System.Runtime.InteropServices.Guid("ea234770-c86f-1706-8842-c6fb5311ba79")>]
type DkmClrRuntimeInstance = class
    inherit DkmRuntimeInstance
Public Class DkmClrRuntimeInstance
Inherits DkmRuntimeInstance
Dziedziczenie
Pochodne
Atrybuty

Właściwości

Capabilities

Wyliczenie możliwości środowiska uruchomieniowego.

         Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion. VS12RTM).
(Odziedziczone po DkmRuntimeInstance)
Connection

Reprezentuje to połączenie między monitorem i IDE. Może to być połączenie lokalne, jeśli monitor działa w tym samym procesie co IDE, lub może być połączeniem zdalnym. W procesie monitorowania jest tylko jedno połączenie.

(Odziedziczone po DkmRuntimeInstance)
CORSystemDirectory

Obowiązkowe Katalog instalacji wystąpienia środowiska uruchomieniowego języka wspólnego (CLR). Na przykład "c:\Windows\Microsoft.NET\Framework\v2.0.50727 ' . Jest to ta sama ścieżka zwracana z interfejsu API GetCORSystemDirectory — i zawsze zawiera końcowy ukośnik.

Id

Identyfikuje obiekt DkmRuntimeInstance w ramach procesu.

(Odziedziczone po DkmRuntimeInstance)
IsUnloaded

Zwraca wartość PRAWDA, jeśli zgłoszono zdarzenie "zwolnione" dla tego obiektu (przykład: DkmThread:: Unload jest wywoływana) lub jeśli obiekt został zamknięty. Należy zauważyć, że należy zachować ostrożność podczas sprawdzania tego stanu jako, bez synchronizacji, zwrócony stan może nie być już dokładny po odczytaniu.

(Odziedziczone po DkmDataContainer)
ParentRuntime

Obowiązkowe W przypadku środowiska uruchomieniowego, które są implementowane na podstawie innego środowiska uruchomieniowego, można go opcjonalnie użyć do indyjskiego logicznego elementu nadrzędnego. Tego programu można następnie użyć do żądania usług z elementu nadrzędnego, gdy środowisko uruchomieniowe podrzędne nie implementuje usługi. Jest to obecnie używane tylko w celu uzyskania górnej ramki stosu w celu oszacowania warunkowego punktu przerwania, gdy środowisko uruchomieniowe podrzędny nie powoduje wyszukania stosów.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion. VS12RTM).

(Odziedziczone po DkmRuntimeInstance)
Process

DkmProcess reprezentuje proces docelowy, który jest debugowany. Debuger debuguje procesy, więc jest podstawową jednostką debugowania. DkmProcess może reprezentować proces systemowy lub proces wirtualny, taki jak minizrzutów.

(Odziedziczone po DkmRuntimeInstance)
RuntimeVersion

Obowiązkowe Ciąg wersji dla wystąpienia CLR (np. "v 2.0.50727").

TagValue

DkmRuntimeInstance jest abstrakcyjną klasą bazową. To Wyliczenie wskazuje klasę pochodną, której wystąpienie jest ten obiekt.

(Odziedziczone po DkmRuntimeInstance)

Metody

AfterSteppingArbitration(DkmStepper, DkmStepArbitrationReason, DkmRuntimeInstance)

AfterSteppingArbitration jest wywoływana przez Menedżera kroków w starym wystąpieniu środowiska uruchomieniowego, po zakończeniu rozstrzygania, ale przed rozpoczęciem następnego wystąpienia środowiska uruchomieniowego. Dzięki temu środowiska uruchomieniowe mogą wyczyścić wszystkie Stany taktowania, jeśli inne środowisko uruchomieniowe przejąło kontrolę. Jeśli żaden inny monitor środowiska uruchomieniowego nie zażądał bieżącej lokalizacji, oryginalny monitor powinien zakończyć ten krok. Jest to wskazywane przez NewControllingRuntimeInstance o wartości null. Na przykład wystąpienie środowiska uruchomieniowego może zdecydować się na wykonanie kopii zapasowej, jeśli krok określony w lokalizacji bez symboli i żadne inne środowisko uruchomieniowe nie przejął kontroli.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

(Odziedziczone po DkmRuntimeInstance)
BeforeEnableNewStepper(DkmStepper)

BeforeEnableNewStepper jest wywoływana przez Menedżera krokowe przed włączeniem nowego stepper. Dzięki temu środowisko uruchomieniowe może wykonać wszelkie inicjalizacje, które mogą być wymagane, takie jak wykonywanie obliczeń funkcji przed etapami.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

(Odziedziczone po DkmRuntimeInstance)
CanDoFuncEval(DkmThread)

Sprawdza, czy dany wątek znajduje się w stanie, w którym środowisko CLR obsługuje zarządzane operacje Func-eval.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

ContinueForFuncEval(DkmThread, ICorDebugEval, DkmFuncEvalFlags, UInt32, String)

Kontynuuj proces i poczekaj na ukończenie funkcji Func-eval. Obiekt wywołujący powinien zawsze wykonać operację "CanDoFuncEval" przed utworzeniem ICorDebugEval i ustawieniem oceny.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

ContinueForFuncEval(DkmThread, ICorDebugEval, DkmFuncEvalFlags, UInt32, String, DkmClrInstructionAddress)

Kontynuuj proces i poczekaj na ukończenie funkcji Func-eval. Obiekt wywołujący powinien zawsze wykonać operację "CanDoFuncEval" przed utworzeniem ICorDebugEval i ustawieniem oceny.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 15 RTM (DkmApiVersion. VS15RTM).

Create(DkmProcess, DkmRuntimeInstanceId, DkmRuntimeCapabilities, DkmRuntimeInstance, String, String, DkmDataItem)

Tworzy nowy obiekt wystąpienia środowiska uruchomieniowego na podstawie monitora debugowania. Ta metoda musi zostać wywołana z wątku zdarzeń, gdy Monitor debugowania wykryje, że nowe wystąpienie środowiska uruchomieniowego zostało załadowane (na przykład w przypadku, gdy odpowiednia biblioteka DLL środowiska uruchomieniowego jest załadowana w procesie docelowym).

Ta metoda wyśle zdarzenie RuntimeInstanceLoad.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion. VS12RTM).

Create(DkmProcess, DkmRuntimeInstanceId, String, String, DkmDataItem)

Tworzy nowy obiekt wystąpienia środowiska uruchomieniowego na podstawie monitora debugowania. Ta metoda musi zostać wywołana z wątku zdarzeń, gdy Monitor debugowania wykryje, że nowe wystąpienie środowiska uruchomieniowego zostało załadowane (na przykład w przypadku, gdy odpowiednia biblioteka DLL środowiska uruchomieniowego jest załadowana w procesie docelowym).

Ta metoda wyśle zdarzenie RuntimeInstanceLoad.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

Disassemble(DkmInstructionAddress, UInt32)

Rozbierz zakres adresów w środowisku uruchomieniowym debugowanego obiektu.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika IDE (poziom składnika > 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion. VS12RTM).

(Odziedziczone po DkmRuntimeInstance)
FindAppDomain(Int32)

Znajdź element DkmClrAppDomain w tym DkmClrRuntimeInstance. Jeśli żaden element z danym kluczem wejściowym nie jest obecny, FindAppDomain zakończy się niepowodzeniem.

FindClrModuleInstance(ICorDebugModule)

Uzyskuje DkmClrModuleInstance z ICorDebugModule.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

FindModulesByName(String)

Ta metoda zwraca wszystkie moduły, które pasują do określonej nazwy.

(Odziedziczone po DkmRuntimeInstance)
GetActiveStatements(DkmActiveStatement[])

Udostępnia stos wszystkich aktywnych instrukcji we wszystkich wątkach. Tak więc, jeśli ta sama funkcja jest w stosie wywołań wiele razy, zostanie zduplikowana w tej tablicy. Wpisy w stosie są pogrupowane według wątku.

Ograniczenie lokalizacji: można wywołać z klienta po stronie serwera.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 5 (DkmApiVersion. VS15Update5).

GetActiveStatements(DkmWorkList, DkmCompletionRoutine<DkmGetActiveStatementsAsyncResult>)

Udostępnia stos wszystkich aktywnych instrukcji we wszystkich wątkach. Tak więc, jeśli ta sama funkcja jest w stosie wywołań wiele razy, zostanie zduplikowana w tej tablicy. Wpisy w stosie są pogrupowane według wątku.

Ta metoda spowoduje dołączenie nowego elementu pracy do określonej listy zadań i zwrócenie po dołączeniu elementu pracy. Rzeczywiste przetwarzanie elementu pracy jest asynchroniczne. Obiekt wywołujący zostanie powiadomiony o tym, że żądanie zostało zakończone przez procedurę ukończenia.

Ograniczenie lokalizacji: można wywołać z klienta po stronie serwera.

Ten interfejs API został wprowadzony w programie Visual Studio 15 Update 5 (DkmApiVersion. VS15Update5).

GetAliases(DkmInspectionContext)

Pobiera listę aliasów, które mogą być używane w wyrażeniach.

         Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion. VS14RTM).
GetAppDomains()

Getappdomains wylicza elementy DkmClrAppDomain tego obiektu DkmClrRuntimeInstance.

GetCodePathsInRange(ICorDebugFrame, UInt32, UInt32)

GetCodePathsInRange jest wywoływana w celu uzyskania ścieżek kodu w określonym zakresie IL.

         Ograniczenie lokalizacji: powinno być wywoływane tylko po stronie serwera.

         Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion. VS12RTM).
(Odziedziczone po DkmRuntimeInstance)
GetCorFrame(DkmThread, UInt64, Guid)

GetCorFrame służy do uzyskania ICorDebugFrame, którego składnik może użyć do głębokiego zbadania ramki stosu.

Zwracany interfejs może być używany tylko do inspekcji procesu docelowego i nigdy nie powinien być używany do kontrolowania wykonywania (bez taktowania, braku punktów przerwania, bez kontynuowania itp.). Wykonanie tej czynności nie jest obsługiwane i spowoduje niezdefiniowane zachowanie.

Ograniczenie lokalizacji: ten interfejs API musi zostać wywołany z tego samego procesu, w którym docelowe środowisko uruchomieniowe implementuje funkcję przeszukiwania stosu. W przypadku debugowania zarządzanego oznacza to, że podczas debugowania 64-bitowych lub procesów zdalnych ten interfejs API musi zostać wywołany ze składnika monitora debugowania.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion. VS14RTM).

GetCorProcess()

Zapewnia bezpośredni dostęp do obiektu ICorDebugProcess, który ocenia wyrażenia lub inne składniki mogą być używane do inspekcji.

Zwracany interfejs może być używany tylko do inspekcji procesu docelowego i nigdy nie powinien być używany do kontrolowania wykonywania (bez taktowania, braku punktów przerwania, bez kontynuowania itp.). Wykonanie tej czynności nie jest obsługiwane i spowoduje niezdefiniowane zachowanie.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

GetCorThread(DkmThread)

Zapewnia bezpośredni dostęp do obiektu ICorDebugThread, który może być używany przez ocenianie wyrażeń lub inne składniki do sprawdzenia domeny aplikacji.

Zwracany interfejs może być używany tylko do inspekcji procesu docelowego i nigdy nie powinien być używany do kontrolowania wykonywania (bez taktowania, braku punktów przerwania, bez kontynuowania itp.). Wykonanie tej czynności nie jest obsługiwane i spowoduje niezdefiniowane zachowanie.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

GetDataItem<T>()

Pobiera wystąpienie "t", które zostało dodane do tego wystąpienia kontenera. Jeśli ten kontener nie zawiera elementu "t", funkcja ta zwróci wartość null.

(Odziedziczone po DkmDataContainer)
GetEncAvailability(String)

Sprawdza, czy w odpowiednim wystąpieniu środowiska uruchomieniowego jest obsługiwana Edycja i kontynuowanie.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika IDE (poziom składnika > 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 1 (DkmApiVersion. VS16Update1).

GetInstructionAddress(DkmInstructionAddress, Int32)

Zwraca adres instrukcji KTH względem adresu początkowego. W przypadku zestawów instrukcji o stałej długości jest to prosta arytmetyczna. W przypadku zestawów instrukcji o zmiennej długości do uzyskania tego adresu wymagany jest odwrócenie odwzorowania.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika IDE (poziom składnika > 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion. VS12RTM).

(Odziedziczone po DkmRuntimeInstance)
GetIntrinsicAssemblyMetaDataBytesPtr(UInt32)

Pobierz metadane dla "zestawu metod wewnętrznych". Metody wewnętrzne to specjalne metody, które aparat debugowania rozpoznaje podczas wykonywania zapytania inspekcji środowiska CLR. Przykład: podczas oceniania "$exception" w ewaluatora wyrażeń języka c# kompilator wyrażeń języka C# emituje wywołanie GetException w zestawie metod wewnętrznych. Zamiast wykonywania wywołania normalnie, debuger zamiast tego symuluje wywołanie metody i zwróci wyjątek w bieżącym wątku.

Ten interfejs API został wprowadzony w programie Visual Studio 14 RTM (DkmApiVersion. VS14RTM).

GetManagedHeapSamplers()

GetManagedHeapSamplers wylicza elementy DkmManagedHeapSampler tego obiektu DkmRuntimeInstance.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion. VS12RTM).

(Odziedziczone po DkmRuntimeInstance)
GetManagedHeapWalkers()

GetManagedHeapWalkers wylicza elementy DkmManagedHeapWalker tego obiektu DkmRuntimeInstance.

Ten interfejs API został wprowadzony w programie Visual Studio 12 RTM (DkmApiVersion. VS12RTM).

(Odziedziczone po DkmRuntimeInstance)
GetMethodReturnAddresses(DkmClrModuleInstance, DkmClrMethodId)

Wewnętrzna Metoda pomocnicza do znajdowania wszystkich adresów instrukcji RET w danej metodzie. SESJA! Adresy wskazują rzeczywistą IL, a nie bieżący/poprzedni punkt sekwencji!

Ograniczenie lokalizacji: Brak.

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 6 (DkmApiVersion. VS16Update6).

GetModuleInstances()

GetModuleInstances wylicza elementy DkmModuleInstance tego obiektu DkmRuntimeInstance.

(Odziedziczone po DkmRuntimeInstance)
GetOutOfProcStepAddresses(DkmStepper, DkmStackWalkFrame, DkmSteppingRange[])

Wewnętrzna Metoda pomocnicza służąca do znajdowania adresów kandydatów na potrzeby kroku w trybie failover.

         Ograniczenie lokalizacji: Brak.

         Ten interfejs API został wprowadzony w programie Visual Studio 16 RTM (DkmApiVersion. VS16RTMPreview).
GetScriptDocumentTreeNodes()

GetScriptDocumentTreeNodes wylicza elementy DkmScriptDocumentTreeNode tego obiektu DkmRuntimeInstance.

(Odziedziczone po DkmRuntimeInstance)
GetSymbolNameForAddress(DkmWorkList, UInt64, DkmCompletionRoutine<DkmGetSymbolNameForAddressAsyncResult>)

Pobiera nazwę symbolu dla określonego adresu przy użyciu informacji o środowisku uruchomieniowym zamiast symboli. Obecnie jest to zaimplementowane dla wystąpienia środowiska uruchomieniowego CLR.

Ta metoda spowoduje dołączenie nowego elementu pracy do określonej listy zadań i zwrócenie po dołączeniu elementu pracy. Rzeczywiste przetwarzanie elementu pracy jest asynchroniczne. Obiekt wywołujący zostanie powiadomiony o tym, że żądanie zostało zakończone przez procedurę ukończenia.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika IDE (poziom składnika > 100 000).

Ten interfejs API został wprowadzony w programie Visual Studio 16 Update 7 (DkmApiVersion. VS16Update7).

(Odziedziczone po DkmRuntimeInstance)
GetTaskProviders()

GetTaskProviders wylicza elementy DkmTaskProvider tego obiektu DkmRuntimeInstance.

(Odziedziczone po DkmRuntimeInstance)
GetThreadDisplayProperties(DkmWorkList, DkmThread, DkmCompletionRoutine<DkmGetThreadDisplayPropertiesAsyncResult>)

Pobiera właściwości wyświetlania wątku, w tym nazwę wyświetlaną i kategorię wątku.

Ta metoda spowoduje dołączenie nowego elementu pracy do określonej listy zadań i zwrócenie po dołączeniu elementu pracy. Rzeczywiste przetwarzanie elementu pracy jest asynchroniczne. Obiekt wywołujący zostanie powiadomiony o tym, że żądanie zostało zakończone przez procedurę ukończenia.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika IDE (poziom składnika > 100 000).

(Odziedziczone po DkmRuntimeInstance)
GetThreadName(DkmThread)

Oblicz nazwę wątku.

(Odziedziczone po DkmRuntimeInstance)
GetThreadName(DkmWorkList, DkmThread, DkmCompletionRoutine<DkmGetThreadNameAsyncResult>)

Oblicz nazwę wątku.

Ta metoda spowoduje dołączenie nowego elementu pracy do określonej listy zadań i zwrócenie po dołączeniu elementu pracy. Rzeczywiste przetwarzanie elementu pracy jest asynchroniczne. Obiekt wywołujący zostanie powiadomiony o tym, że żądanie zostało zakończone przez procedurę ukończenia.

(Odziedziczone po DkmRuntimeInstance)
NotifyStepComplete(DkmStepper)

NotifyStepComplete jest wywoływany przez Menedżera krokowe dla wszystkich wystąpień środowiska uruchomieniowego niekontrolujących, gdy krok zostanie ukończony.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

(Odziedziczone po DkmRuntimeInstance)
OnFuncEvalQuickAbortDllLoaded(DkmThread, Boolean)

Powiadamia wynik próby załadowania biblioteki DLL FEQA.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

OnLoadComplete()

Ta metoda jest wywoływana przez Monitor debugowania w celu wywołania zdarzenia RuntimeInstanceLoadComplete. RuntimeInstanceLoadComplete jest obecnie wysyłane tylko dla natywnego wystąpienia środowiska uruchomieniowego, chociaż może to ulec zmianie w przyszłości. Zdarzenie jest wydawane po utworzeniu obiektów DkmModuleInstance dla początkowego zestawu modułów w wystąpieniu środowiska uruchomieniowego.

Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

Ten interfejs API został wprowadzony w programie Visual Studio 12 Update 2 (DkmApiVersion. VS12Update2).

(Odziedziczone po DkmRuntimeInstance)
OnNewControllingRuntimeInstance(DkmStepper, DkmStepArbitrationReason, DkmRuntimeInstance)

OnNewControllingRuntimeInstance jest wywoływany przez Menedżera kroków na wszystkich wystąpieniach niekontrolujących środowiska uruchomieniowego po wybraniu nowego wystąpienia środowiska uruchomieniowego.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

(Odziedziczone po DkmRuntimeInstance)
OwnsCurrentExecutionLocation(DkmStepper, DkmStepArbitrationReason)

OwnsCurrentExecutionLocation jest wywoływany przez Menedżera etapów podczas wyszukiwania monitorów, aby wykonać krok. Jeśli bieżąca lokalizacja w debugowanego obiektu jest zrozumiała dla tego monitora, można zwrócić wartość true tutaj, aby przejąć kontrolę nad krokiem.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

(Odziedziczone po DkmRuntimeInstance)
PrepareForFuncEvalQuickAbort(DkmThread, Boolean, UInt64)

Sprawdza, czy należy załadować bibliotekę DLL FEQA.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

RemoveDataItem<T>()

Usuń wystąpienie elementu "t" z tego kontenera. Zwykle nie jest konieczne wywoływanie tej metody, ponieważ kontener danych zostanie automatycznie opróżniony, gdy obiekt zostanie zamknięty.

(Odziedziczone po DkmDataContainer)
ResolveCPUInstructionAddress(DkmWorkList, UInt64, DkmCompletionRoutine<DkmResolveCPUInstructionAddressAsyncResult>)

Rozwiązuje InstructionAddress procesora CPU do obiektu DkmInstructionAddress określonego dla środowiska uruchomieniowego.

Ten interfejs API jest obecnie obsługiwany tylko przez obiekty CLR DkmRuntimeInstance, a wystąpienie środowiska uruchomieniowego CLR może obecnie znaleźć tylko adresy instrukcji, które znajdują się w metodzie, która jest obecnie w stosie wywołań jednego z wątków w procesie docelowym.

Ta metoda spowoduje dołączenie nowego elementu pracy do określonej listy zadań i zwrócenie po dołączeniu elementu pracy. Rzeczywiste przetwarzanie elementu pracy jest asynchroniczne. Obiekt wywołujący zostanie powiadomiony o tym, że żądanie zostało zakończone przez procedurę ukończenia.

Ograniczenie lokalizacji: ten interfejs API powinien być zazwyczaj wywoływany na kliencie, ale może być wywoływany na serwerze w celu tłumaczenia adresów CLR (ale nie skompilowanych w sposób macierzysty).

(Odziedziczone po DkmRuntimeInstance)
ResolveCPUInstructionAddress(UInt64, Boolean)

Rozwiązuje InstructionAddress procesora CPU do obiektu DkmInstructionAddress określonego dla środowiska uruchomieniowego.

Ten interfejs API jest obecnie obsługiwany tylko przez obiekty CLR DkmRuntimeInstance, a wystąpienie środowiska uruchomieniowego CLR może obecnie znaleźć tylko adresy instrukcji, które znajdują się w metodzie, która jest obecnie w stosie wywołań jednego z wątków w procesie docelowym.

Ograniczenie lokalizacji: ten interfejs API powinien być zazwyczaj wywoływany na kliencie, ale może być wywoływany na serwerze w celu tłumaczenia adresów CLR (ale nie skompilowanych w sposób macierzysty).

(Odziedziczone po DkmRuntimeInstance)
SetDataItem<T>(DkmDataCreationDisposition, T)

Umieść nowy element w kontenerze danych.

(Odziedziczone po DkmDataContainer)
SetRegisterValue(DkmStackWalkFrame, Int32, ReadOnlyCollection<Byte>)

Ustawia wartość rejestru w kontekście wątku. Rejestry podrzędne, które składają się z większych rejestrów, są obsługiwane.

(Odziedziczone po DkmRuntimeInstance)
Step(DkmStepper, DkmStepArbitrationReason)

Krok jest wywoływany przez Menedżera kroków, po ustaleniu, że ten monitor jest poprawnym monitorem, aby wykonać ten krok.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

(Odziedziczone po DkmRuntimeInstance)
StepControlRequested(DkmStepper, DkmStepArbitrationReason, DkmRuntimeInstance)

StepControlRequested jest wywoływana przez Menedżera kroków, gdy wystąpienie środowiska uruchomieniowego, które nie kontroluje, wykryje, że wątek osiągnęł przejście do jego środowiska uruchomieniowego. Jeśli bieżące kontrolowanie wystąpienia środowiska uruchomieniowego może zatrzymać wykonywanie kroków, należy ustawić na wartość true. Rzeczywisty formant nie jest podawany do momentu wywołania przez środowisko uruchomieniowe żądania DkmStepper. TakeStepControl. Ten dwuczęściowy proces umożliwia wywołujących żądanie kontroli nad wieloma procesorami w tym samym czasie.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

(Odziedziczone po DkmRuntimeInstance)
StopStep(DkmStepper)

StopStep jest wywoływany przez Menedżera kroków, gdy proces jest kontynuowany w celu wyczyszczenia dowolnego pozostałego stanu krokowe dla stepper.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

(Odziedziczone po DkmRuntimeInstance)
TakeStepControl(DkmStepper, Boolean, DkmStepArbitrationReason, DkmRuntimeInstance)

TakeStepControl jest wywoływana przez Menedżera kroków, gdy wystąpienie środowiska uruchomieniowego, które nie kontroluje, wykryje, że wątek osiągnęł przejście do jego środowiska uruchomieniowego. Menedżer krokowe przekaże wywołanie do aktualnie kontrolującego wystąpienia środowiska uruchomieniowego. Wystąpienie środowiska uruchomieniowego żądające kontroli powinno najpierw wywołać StepControlRequested na wszystkich, które, co chce mieć kontrolę. Jeśli wszyscy mają ustawioną wartość true, wystąpienie środowiska uruchomieniowego powinno następnie wywołać tę metodę dla każdego stepperu, który przyjmuje kontrolę nad.

Ograniczenie lokalizacji: interfejs API musi zostać wywołany ze składnika monitora (poziom składnika < 100 000).

(Odziedziczone po DkmRuntimeInstance)
Unload()

RuntimeInstanceUnload jest wysyłany przez dyspozytora, gdy DkmRuntimeInstance:: Unload jest wywoływana przez Monitor.

Ta metoda może być wywoływana tylko przez składnik, który utworzył obiekt.

(Odziedziczone po DkmRuntimeInstance)

Dotyczy