Share via


DkmClrRuntimeInstance Classe

Definizione

Rappresenta un'istanza CLR in esecuzione in un processo di destinazione.

Classi derivate: 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
Ereditarietà
Ereditarietà
Derivato
Attributi

Proprietà

Capabilities

Enumerazione delle funzionalità di runtime.

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmRuntimeInstance)
Connection

Rappresenta una connessione tra il monitoraggio e l'IDE. Può essere una connessione locale se il monitoraggio è in esecuzione nello stesso processo dell'IDE oppure può essere una connessione remota. Nel processo di monitoraggio è presente una sola connessione.

(Ereditato da DkmRuntimeInstance)
CORSystemDirectory

[Facoltativo] Directory di installazione dell'istanza CLR (Common Language Runtime). Ad esempio'c:\Windows\Microsoft.NET\Framework\v2.0.50727'. Questo è lo stesso percorso restituito dall'API GetCORSystemDirectory e include sempre la barra finale.

Id

Identifica un oggetto DkmRuntimeInstance all'interno di un processo.

(Ereditato da DkmRuntimeInstance)
IsUnloaded

Restituisce true se viene generato un evento "non caricato" per questo oggetto (ad esempio: DkmThread::Unload viene chiamato) o se l'oggetto è stato chiuso. Si noti che è necessario usare attenzione quando si controlla questo stato come, senza sincronizzazione, lo stato restituito potrebbe non essere più accurato dopo la lettura.

(Ereditato da DkmDataContainer)
ParentRuntime

[Facoltativo] Per i runtime implementati all'inizio di un altro runtime, è possibile usare facoltativamente per indichere l'elemento padre logico. Questa operazione può quindi essere usata per richiedere servizi dall'elemento padre quando il runtime figlio non implementa il servizio. Questa operazione viene attualmente usata solo per ottenere il frame dello stack superiore per valutare un punto di interruzione condizionale quando il runtime figlio non esegue lo stack stesso.

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmRuntimeInstance)
Process

DkmProcess rappresenta un processo di destinazione in fase di debug. Il debugger esegue il debug dei processi, quindi questa è l'unità di base del debug. Un DkmProcess può rappresentare un processo di sistema o un processo virtuale, ad esempio minidump.

(Ereditato da DkmRuntimeInstance)
RuntimeVersion

[Facoltativo] Stringa di versione per l'istanza CLR (ad esempio: 'v2.0.50727').

TagValue

DkmRuntimeInstance è una classe base astratta. Questa enumerazione indica la classe derivata di questo oggetto è un'istanza di .

(Ereditato da DkmRuntimeInstance)

Metodi

AfterSteppingArbitration(DkmStepper, DkmStepArbitrationReason, DkmRuntimeInstance)

AfterSteppingArbitration viene chiamato dal gestore di passaggi nell'istanza precedente del runtime di controllo dopo il completamento dell'arbitrato, ma prima dell'avvio dell'istanza di runtime successiva. Ciò consente ai runtime di cancellare qualsiasi stato di esecuzione se un altro runtime ha preso il controllo. Se nessun altro monitoraggio di runtime ha richiesto la posizione corrente, il monitoraggio originale deve completare il passaggio. Questo valore è indicato da NewControllingRuntimeInstance null. Ad esempio, un'istanza di runtime può scegliere di eseguire il passaggio se un passaggio viene inserito in una posizione senza simboli e nessun altro runtime ha preso il controllo.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmRuntimeInstance)
BeforeEnableNewStepper(DkmStepper)

BeforeEnableNewStepper viene chiamato dal gestore di passaggi prima che sia abilitato un nuovo stepper. Ciò consente ai runtime di eseguire qualsiasi inizializzazione che potrebbe essere necessaria, ad esempio l'esecuzione di valutazioni di funzione pre-passaggio.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmRuntimeInstance)
BindMethodToObject(DkmStackWalkFrame, UInt64, DkmClrModuleInstance, Int32, DkmClrType, Int32)

Tenta di associare il metodo descritto da Token e Module a questo oggetto.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

Questa API è stata introdotta in Visual Studio 17 Update 8 (DkmApiVersion.VS17Update8).

CanDoFuncEval(DkmThread)

Verifica se il thread specificato è in uno stato in cui CLR supporta func-evals gestiti.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

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

Continuare il processo e attendere il completamento di un func-eval. Il chiamante deve sempre eseguire "CanDoFuncEval" prima di creare ICorDebugEval e configurare la valutazione.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

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

Continuare il processo e attendere il completamento di un func-eval. Il chiamante deve sempre eseguire "CanDoFuncEval" prima di creare ICorDebugEval e configurare la valutazione.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

Questa API è stata introdotta in Visual Studio 15 RTM (DkmApiVersion.VS15RTM).

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

Crea un nuovo oggetto istanza di runtime da un monitoraggio di debug. Questo metodo deve essere chiamato dal thread evento quando un monitoraggio di debug rileva che una nuova istanza di runtime è stata caricata, ad esempio quando la dll di runtime corrispondente viene caricata nel processo di destinazione.

Questo metodo invierà un evento RuntimeInstanceLoad.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

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

Crea un nuovo oggetto istanza di runtime da un monitoraggio di debug. Questo metodo deve essere chiamato dal thread evento quando un monitoraggio di debug rileva che una nuova istanza di runtime è stata caricata, ad esempio quando la dll di runtime corrispondente viene caricata nel processo di destinazione.

Questo metodo invierà un evento RuntimeInstanceLoad.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

Disassemble(DkmInstructionAddress, UInt32)

Disassemblare un intervallo di indirizzi nel runtime di debug.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmRuntimeInstance)
FindAppDomain(Int32)

Trovare un elemento DkmClrAppDomain all'interno di questo DkmClrRuntimeInstance. Se non è presente alcun elemento con la chiave di input specificata, FindAppDomain avrà esito negativo.

FindClrModuleInstance(ICorDebugModule)

Ottiene DkmClrModuleInstance da un oggetto ICorDebugModule.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

FindModulesByName(String)

Questo metodo restituisce tutti i moduli corrispondenti al nome specificato.

(Ereditato da DkmRuntimeInstance)
GetActiveStatements(DkmActiveStatement[])

Fornisce lo stack di tutte le istruzioni attive in tutti i thread. Quindi, se la stessa funzione si trova in uno stack di chiamate più volte, verrà duplicata in questa matrice. Le voci nello stack vengono raggruppate in base al thread.

Vincolo percorso: può essere chiamato dal client al lato server.

Questa API è stata introdotta in Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5).

GetActiveStatements(DkmWorkList, DkmCompletionRoutine<DkmGetActiveStatementsAsyncResult>)

Fornisce lo stack di tutte le istruzioni attive in tutti i thread. Quindi, se la stessa funzione si trova in uno stack di chiamate più volte, verrà duplicata in questa matrice. Le voci nello stack vengono raggruppate in base al thread.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo percorso: può essere chiamato dal client al lato server.

Questa API è stata introdotta in Visual Studio 15 Update 5 (DkmApiVersion.VS15Update5).

GetAliases(DkmInspectionContext)

Ottiene l'elenco di alias attualmente utilizzabili nelle espressioni.

Questa API è stata introdotta in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

GetAppDomains()

GetAppDomains enumera gli elementi DkmClrAppDomain di questo oggetto DkmClrRuntimeInstance.

GetApplyUpdateCapabilities()

Ottenere le stringhe di funzionalità per il set di modifiche e continuazioni supportate dal runtime.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 17 RTM (DkmApiVersion.VS17RTM).

GetApplyUpdateCapabilities(DkmWorkList, DkmCompletionRoutine<DkmGetApplyUpdateCapabilitiesAsyncResult>)

Ottenere le stringhe di funzionalità per il set di modifiche e continuazioni supportate dal runtime.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 17 RTM (DkmApiVersion.VS17RTM).

GetArrayLayoutForType(DkmManagedTypeId)

Dato un ID tipo gestito, ottenere il layout della matrice di tale tipo.

Questa API è stata introdotta in Visual Studio 17 Update 5 (DkmApiVersion.VS17Update5).

GetCodePathsInRange(ICorDebugFrame, UInt32, UInt32)

GetCodePathsInRange viene chiamato per ottenere i percorsi di codice in un intervallo DI IL specifico.

Vincolo percorso: deve essere chiamato solo sul lato server.

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmRuntimeInstance)
GetCorFrame(DkmThread, UInt64, Guid)

GetCorFrame viene usato per ottenere un ICorDebugFrame che un componente può usare per esaminare in modo approfondito il frame dello stack.

L'interfaccia restituita può essere usata SOLO per controllare il processo di destinazione e non deve mai essere usata per controllare l'esecuzione (nessun passaggio, nessun punto di interruzione, nessuna continuazione e così via). In questo modo non è supportato e comporterà un comportamento non definito.

Vincolo percorso: questa API deve essere chiamata dallo stesso processo in cui il runtime di destinazione implementa la procedura dettagliata dello stack. Per il debug gestito, ciò significa che quando si esegue il debug di processi remoti o a 64 bit, questa API deve essere chiamata da un componente di monitoraggio di debug.

Questa API è stata introdotta in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

GetCorProcess()

Fornisce l'accesso diretto all'oggetto ICorDebugProcess, che gli analizzatori di espressioni o altri componenti possono usare per l'ispezione.

L'interfaccia restituita può essere usata SOLO per controllare il processo di destinazione e non deve mai essere usata per controllare l'esecuzione (nessun passaggio, nessun punto di interruzione, nessuna continuazione e così via). In questo modo non è supportato e comporterà un comportamento non definito.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

GetCorThread(DkmThread)

Fornisce l'accesso diretto all'oggetto ICorDebugThread, che gli analizzatori di espressioni o altri componenti possono usare per controllare il dominio dell'app.

L'interfaccia restituita può essere usata SOLO per controllare il processo di destinazione e non deve mai essere usata per controllare l'esecuzione (nessun passaggio, nessun punto di interruzione, nessuna continuazione e così via). In questo modo non è supportato e comporterà un comportamento non definito.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

GetDataItem<T>()

Ottiene l'istanza di 'T' che è stata aggiunta a questa istanza del contenitore. Se questo contenitore non contiene un 'T', questa funzione restituirà Null.

(Ereditato da DkmDataContainer)
GetEncAvailability(String)

Verifica se Edit and Continue è supportato per l'istanza di runtime corrispondente.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 16 Update 1 (DkmApiVersion.VS16Update1).

GetInstructionAddress(DkmInstructionAddress, Int32)

Restituisce l'indirizzo dell'istruzione kth rispetto a un indirizzo iniziale. Per i set di istruzioni di lunghezza costante, questo è semplice aritmetico. Per i set di istruzioni di lunghezza variabile, è necessario eseguire il disassembly inverso per ottenere questo indirizzo.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmRuntimeInstance)
GetIntrinsicAssemblyMetaDataBytesPtr(UInt32)

Ottenere i metadati per l'assembly "Metodi intrinseci". I metodi intrinseci sono metodi speciali che il motore di debug comprende quando si esegue una query di ispezione CLR. Esempio: quando si valuta "$exception" nell'analizzatore di espressioni C#, il compilatore di espressioni C# genererà una chiamata a GetException nell'assembly dei metodi intrinseci. Anziché eseguire la chiamata normalmente, il debugger simula la chiamata al metodo e restituisce l'eccezione nel thread corrente.

Questa API è stata introdotta in Visual Studio 14 RTM (DkmApiVersion.VS14RTM).

GetManagedHeapSamplers()

GetManagedHeapSamplers enumera gli elementi DkmManagedHeapSampler di questo oggetto DkmRuntimeInstance.

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmRuntimeInstance)
GetManagedHeapWalkers()

GetManagedHeapWalkers enumera gli elementi DkmManagedHeapWalker di questo oggetto DkmRuntimeInstance.

Questa API è stata introdotta in Visual Studio 12 RTM (DkmApiVersion.VS12RTM).

(Ereditato da DkmRuntimeInstance)
GetMethodReturnAddresses(DkmClrModuleInstance, DkmClrMethodId)

Metodo helper interno per trovare tutti gli indirizzi delle istruzioni di ret in un determinato metodo. NB! Gli indirizzi puntano all'ils effettivo, non al punto di sequenza corrente/precedente.

Vincolo location: Nessuno.

Questa API è stata introdotta in Visual Studio 16 Update 6 (DkmApiVersion.VS16Update6).

GetModuleInstances()

GetModuleInstances enumera gli elementi DkmModuleInstance di questo oggetto DkmRuntimeInstance.

(Ereditato da DkmRuntimeInstance)
GetOutOfProcStepAddresses(DkmStepper, DkmStackWalkFrame, DkmSteppingRange[])

Metodo helper interno per trovare gli indirizzi candidati per il passaggio in/over.

Vincolo location: Nessuno.

Questa API è stata introdotta in Visual Studio 16 RTM (DkmApiVersion.VS16RTMPreview).

GetScriptDocumentTreeNodes()

GetScriptDocumentTreeNodes enumera gli elementi DkmScriptDocumentTreeNode di questo oggetto DkmRuntimeInstance.

(Ereditato da DkmRuntimeInstance)
GetSymbolNameForAddress(DkmWorkList, UInt64, DkmCompletionRoutine<DkmGetSymbolNameForAddressAsyncResult>)

Ottiene il nome del simbolo per l'indirizzo specificato usando le informazioni di runtime anziché i simboli. Attualmente questa operazione viene implementata solo per l'istanza di runtime CLR.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

Questa API è stata introdotta in Visual Studio 16 Update 7 (DkmApiVersion.VS16Update7).

(Ereditato da DkmRuntimeInstance)
GetTaskProviders()

GetTaskProviders enumera gli elementi DkmTaskProvider di questo oggetto DkmRuntimeInstance.

(Ereditato da DkmRuntimeInstance)
GetThreadDisplayProperties(DkmWorkList, DkmThread, DkmCompletionRoutine<DkmGetThreadDisplayPropertiesAsyncResult>)

Ottiene le proprietà di visualizzazione del thread, incluso il nome visualizzato e la categoria di thread.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo percorso: l'API deve essere chiamata da un componente IDE (livello > di componente 100.000).

(Ereditato da DkmRuntimeInstance)
GetThreadName(DkmThread)

Calcolare il nome di un thread.

(Ereditato da DkmRuntimeInstance)
GetThreadName(DkmWorkList, DkmThread, DkmCompletionRoutine<DkmGetThreadNameAsyncResult>)

Calcolare il nome di un thread.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

(Ereditato da DkmRuntimeInstance)
GetTypeLayoutForType(DkmManagedTypeId)

Dato un ID tipo gestito, ottenere il layout del tipo di tale tipo.

Questa API è stata introdotta in Visual Studio 17 Update 6 (DkmApiVersion.VS17Update6).

NotifyStepComplete(DkmStepper)

NotifyStepComplete viene chiamato dal gestore di passaggi in tutte le istanze di runtime non controllanti al termine di un passaggio.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmRuntimeInstance)
OnFuncEvalQuickAbortDllLoaded(DkmThread, Boolean)

Notifica il risultato del tentativo di caricare la DLL FEQA.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

OnLoadComplete()

Questo metodo viene chiamato da un monitoraggio di debug per generare un evento RuntimeInstanceLoadComplete. RuntimeInstanceLoadComplete è attualmente inviato solo per l'istanza di runtime nativa, anche se questo potrebbe cambiare in futuro. L'evento viene rilasciato dopo la creazione di oggetti DkmModuleInstance per il set iniziale di moduli nell'istanza di runtime.

Questo metodo può essere chiamato solo dal componente che ha creato l'oggetto.

Questa API è stata introdotta in Visual Studio 12 Update 2 (DkmApiVersion.VS12Update2).

(Ereditato da DkmRuntimeInstance)
OnNewControllingRuntimeInstance(DkmStepper, DkmStepArbitrationReason, DkmRuntimeInstance)

OnNewControllingRuntimeInstance viene chiamato dal gestore delle istruzioni in tutte le istanze di runtime non controllanti dopo che l'arbitrato dei passaggi ha selezionato una nuova istanza di runtime di controllo.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmRuntimeInstance)
OwnsCurrentExecutionLocation(DkmStepper, DkmStepArbitrationReason)

OwnsCurrentExecutionLocation viene chiamato dal gestore di passaggi durante la ricerca di monitoraggi per eseguire un passaggio. Se il percorso corrente nell'oggetto debug viene compreso da questo monitoraggio, può restituire true qui per prendere il controllo del passaggio.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmRuntimeInstance)
PrepareForFuncEvalQuickAbort(DkmThread, Boolean, UInt64)

Verifica se è necessario caricare la DLL FEQA.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

ReenableFuncEval(String)

Tenta di riabilitare func-eval.

Questa API è stata introdotta in Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4).

RemoveDataItem<T>()

Rimuovere l'istanza di 'T' da questo contenitore. In genere non è necessario chiamare questo metodo come contenitore di dati verrà svuotato automaticamente quando l'oggetto viene chiuso.

(Ereditato da DkmDataContainer)
ResolveCPUInstructionAddress(DkmWorkList, UInt64, DkmCompletionRoutine<DkmResolveCPUInstructionAddressAsyncResult>)

Risolve un oggetto DkmInstructionAddress specifico per la CPU.

Questa API è attualmente supportata solo dagli oggetti CLR DkmRuntimeInstance e l'istanza di runtime CLR può attualmente trovare solo indirizzi di istruzione che sono in un metodo attualmente nello stack di chiamate di uno dei thread nel processo di destinazione.

Questo metodo aggiungerà un nuovo elemento di lavoro all'elenco di lavoro specificato e restituirà una volta aggiunto l'elemento di lavoro. L'elaborazione effettiva dell'elemento di lavoro è asincrona. Il chiamante riceverà una notifica che la richiesta viene completata tramite la routine di completamento.

Vincolo percorso: questa API deve in genere essere chiamata sul client, ma può essere chiamata sul server per la conversione di indirizzi CLR (ma non compilata in modo nativo).

(Ereditato da DkmRuntimeInstance)
ResolveCPUInstructionAddress(UInt64, Boolean)

Risolve un oggetto DkmInstructionAddress specifico per la CPU.

Questa API è attualmente supportata solo dagli oggetti CLR DkmRuntimeInstance e l'istanza di runtime CLR può attualmente trovare solo indirizzi di istruzione che sono in un metodo attualmente nello stack di chiamate di uno dei thread nel processo di destinazione.

Vincolo percorso: questa API deve in genere essere chiamata sul client, ma può essere chiamata sul server per la conversione di indirizzi CLR (ma non compilata in modo nativo).

(Ereditato da DkmRuntimeInstance)
SetDataItem<T>(DkmDataCreationDisposition, T)

Inserire un nuovo elemento nel contenitore dati.

(Ereditato da DkmDataContainer)
SetRegisterValue(DkmStackWalkFrame, Int32, ReadOnlyCollection<Byte>)

Imposta il valore del registro nel contesto del thread. Sono supportati i registri secondari costituiti da registri più grandi.

(Ereditato da DkmRuntimeInstance)
Step(DkmStepper, DkmStepArbitrationReason)

Il passaggio viene chiamato dal gestore di passaggi dopo che determina questo monitoraggio è il monitoraggio corretto per eseguire il passaggio.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmRuntimeInstance)
StepControlRequested(DkmStepper, DkmStepArbitrationReason, DkmRuntimeInstance)

StepControlRequested viene chiamato dal gestore delle istruzioni quando un'istanza di runtime non controllante rileva che il thread ha raggiunto una transizione al runtime. Se l'istanza corrente del runtime di controllo può arrestare l'esecuzione, deve essere impostata su true. Il controllo effettivo non viene assegnato fino a quando il runtime di richieste chiama DkmStepper.TakeStepControl. Questo processo di due parti consente ai chiamanti di richiedere il controllo di più passaggi contemporaneamente.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmRuntimeInstance)
StopStep(DkmStepper)

StopStep viene chiamato dal gestore di passaggi quando il processo viene continuato a cancellare qualsiasi stato di passaggio rimanente per un stepper.

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmRuntimeInstance)
TakeStepControl(DkmStepper, Boolean, DkmStepArbitrationReason, DkmRuntimeInstance)

TakeStepControl viene chiamato dal gestore di passaggi quando un'istanza di runtime non controllante rileva che il thread ha raggiunto una transizione al runtime. Il gestore delle istruzioni inoltra la chiamata all'istanza corrente del runtime di controllo. Il controllo di richiesta dell'istanza di runtime deve prima chiamare StepControlRequested in tutti i passaggi di cui vuole il controllo. Se vengono impostati su true, l'istanza di runtime deve quindi chiamare questo metodo su ogni passaggio che sta prendendo il controllo di .

Vincolo percorso: l'API deve essere chiamata da un componente Monitor (livello < di componente 100.000).

(Ereditato da DkmRuntimeInstance)
TryDisableFuncEval(String)

Tenta di disabilitare func-eval.

Questa API è stata introdotta in Visual Studio 17 Update 4 (DkmApiVersion.VS17Update4).

Unload()

RuntimeInstanceUnload viene inviato dal dispatcher quando DkmRuntimeInstance::Unload viene richiamato dal monitoraggio.

Questo metodo può essere chiamato solo dal componente che ha creato l'oggetto.

(Ereditato da DkmRuntimeInstance)

Si applica a