DkmStackWalkContext.RuntimeWalkNextFramesAndCheckCache Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überlädt
| RuntimeWalkNextFramesAndCheckCache(DkmWorkList, UInt32, UInt32, DkmStackHash, DkmCompletionRoutine<DkmRuntimeWalkNextFramesAndCheckCacheAsyncResult>) |
Veraltet. Verwenden Sie diese Methode nicht, da Sie veraltete Hashwerte zurückgibt. Verwenden Sie stattdessen IDkmMergedMonitorStackWalk164:: RuntimeWalkNextFramesAndCheckCache164. Version von runtimewalknextframes (), die ebenfalls überprüft, ob eine zwischengespeicherte Kopie der aufrufsstapel noch gültig ist. Diese Methode fügt ein neues Arbeits Element an die angegebene Arbeitsliste an und gibt zurück, nachdem das Arbeits Element angefügt wurde. Die tatsächliche Verarbeitung der Arbeitsaufgabe erfolgt asynchron. Der Aufrufer wird benachrichtigt, dass die Anforderung durch die Abschluss Routine abgeschlossen wurde. |
| RuntimeWalkNextFramesAndCheckCache(UInt32, UInt32, DkmStackHash, Boolean, DkmStackHash, DkmStackWalkContext, Boolean) |
Veraltet. Verwenden Sie diese Methode nicht, da Sie veraltete Hashwerte zurückgibt. Verwenden Sie stattdessen IDkmMergedMonitorStackWalk164:: RuntimeWalkNextFramesAndCheckCache164. Version von runtimewalknextframes (), die ebenfalls überprüft, ob eine zwischengespeicherte Kopie der aufrufsstapel noch gültig ist. |
RuntimeWalkNextFramesAndCheckCache(DkmWorkList, UInt32, UInt32, DkmStackHash, DkmCompletionRoutine<DkmRuntimeWalkNextFramesAndCheckCacheAsyncResult>)
Veraltet. Verwenden Sie diese Methode nicht, da Sie veraltete Hashwerte zurückgibt. Verwenden Sie stattdessen IDkmMergedMonitorStackWalk164:: RuntimeWalkNextFramesAndCheckCache164. Version von runtimewalknextframes (), die ebenfalls überprüft, ob eine zwischengespeicherte Kopie der aufrufsstapel noch gültig ist.
Diese Methode fügt ein neues Arbeits Element an die angegebene Arbeitsliste an und gibt zurück, nachdem das Arbeits Element angefügt wurde. Die tatsächliche Verarbeitung der Arbeitsaufgabe erfolgt asynchron. Der Aufrufer wird benachrichtigt, dass die Anforderung durch die Abschluss Routine abgeschlossen wurde.
public:
void RuntimeWalkNextFramesAndCheckCache(Microsoft::VisualStudio::Debugger::DkmWorkList ^ WorkList, System::UInt32 RequestSizeHintIfCacheIsValid, System::UInt32 RequestSizeHintIfCacheIsInvalid, Microsoft::VisualStudio::Debugger::CallStack::DkmStackHash ^ CachedHash, Microsoft::VisualStudio::Debugger::DkmCompletionRoutine<Microsoft::VisualStudio::Debugger::CallStack::DkmRuntimeWalkNextFramesAndCheckCacheAsyncResult> ^ CompletionRoutine);
public void RuntimeWalkNextFramesAndCheckCache (Microsoft.VisualStudio.Debugger.DkmWorkList WorkList, uint RequestSizeHintIfCacheIsValid, uint RequestSizeHintIfCacheIsInvalid, Microsoft.VisualStudio.Debugger.CallStack.DkmStackHash CachedHash, Microsoft.VisualStudio.Debugger.DkmCompletionRoutine<Microsoft.VisualStudio.Debugger.CallStack.DkmRuntimeWalkNextFramesAndCheckCacheAsyncResult> CompletionRoutine);
member this.RuntimeWalkNextFramesAndCheckCache : Microsoft.VisualStudio.Debugger.DkmWorkList * uint32 * uint32 * Microsoft.VisualStudio.Debugger.CallStack.DkmStackHash * Microsoft.VisualStudio.Debugger.DkmCompletionRoutine<Microsoft.VisualStudio.Debugger.CallStack.DkmRuntimeWalkNextFramesAndCheckCacheAsyncResult> -> unit
Public Sub RuntimeWalkNextFramesAndCheckCache (WorkList As DkmWorkList, RequestSizeHintIfCacheIsValid As UInteger, RequestSizeHintIfCacheIsInvalid As UInteger, CachedHash As DkmStackHash, CompletionRoutine As DkmCompletionRoutine(Of DkmRuntimeWalkNextFramesAndCheckCacheAsyncResult))
Parameter
- WorkList
- DkmWorkList
Worklist, an das das neue Arbeits Element angefügt werden soll.
- RequestSizeHintIfCacheIsValid
- UInt32
In Requestsizehintifcacheisvalid ist ein Hinweis auf die Anzahl von Frame, die der Aufrufer benötigt. Dieser Wert wird als Hinweis behandelt, da diese API Frames zurückgeben kann, die noch nicht durchlaufen wurden, sodass diese API möglicherweise mehr oder weniger als der Hinweis Wert zurückgibt. Der anforderungsgrößenhinweis 0 bedeutet, dass kein Stapel durchlaufen werden soll, wenn der Cache gültig ist.
- RequestSizeHintIfCacheIsInvalid
- UInt32
In Requestsizehintifcacheisinvalid ist ein Hinweis auf die Anzahl von Frame, die der Aufrufer benötigt. Dieser Wert wird als Hinweis behandelt, da diese API Frames zurückgeben kann, die noch nicht durchlaufen wurden, sodass diese API möglicherweise mehr oder weniger als der Hinweis Wert zurückgibt.
- CachedHash
- DkmStackHash
[In, optional] Zwischen gespeicherter aufrufsstapel-Hash führt den Stapel nicht aus, wenn der Cache noch gültig ist. Dieser Parameter ist optional. Wenn der Wert NULL ist, berechnen wir immer noch den tatsächlichen Hash und führen den Stapel Durchlauf aus, überspringen jedoch den Vergleich des tatsächlichen Hashs mit dem zwischengespeicherten Hash, um den Stapel Durchlauf zu unterdrücken.
- CompletionRoutine
- DkmCompletionRoutine<DkmRuntimeWalkNextFramesAndCheckCacheAsyncResult>
Die Routine, die nach Abschluss der Anforderung ausgelöst werden soll. Wenn die Anforderung erfolgreich an die Arbeitsliste angehängt wird, wird diese immer ausgelöst (auch wenn der Vorgang abgebrochen wird). Dies wird nie ausgelöst, wenn das Anfügen der Arbeitsaufgabe fehlschlägt.
Gilt für
RuntimeWalkNextFramesAndCheckCache(UInt32, UInt32, DkmStackHash, Boolean, DkmStackHash, DkmStackWalkContext, Boolean)
Veraltet. Verwenden Sie diese Methode nicht, da Sie veraltete Hashwerte zurückgibt. Verwenden Sie stattdessen IDkmMergedMonitorStackWalk164:: RuntimeWalkNextFramesAndCheckCache164. Version von runtimewalknextframes (), die ebenfalls überprüft, ob eine zwischengespeicherte Kopie der aufrufsstapel noch gültig ist.
public:
cli::array <Microsoft::VisualStudio::Debugger::CallStack::DkmStackWalkFrame ^> ^ RuntimeWalkNextFramesAndCheckCache(System::UInt32 RequestSizeHintIfCacheIsValid, System::UInt32 RequestSizeHintIfCacheIsInvalid, Microsoft::VisualStudio::Debugger::CallStack::DkmStackHash ^ CachedHash, [Runtime::InteropServices::Out] bool % EndOfStack, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Debugger::CallStack::DkmStackHash ^ % ActualStackHash, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Debugger::CallStack::DkmStackWalkContext ^ % ActualStackWalkContext, [Runtime::InteropServices::Out] bool % IsCacheValid);
public Microsoft.VisualStudio.Debugger.CallStack.DkmStackWalkFrame[] RuntimeWalkNextFramesAndCheckCache (uint RequestSizeHintIfCacheIsValid, uint RequestSizeHintIfCacheIsInvalid, Microsoft.VisualStudio.Debugger.CallStack.DkmStackHash CachedHash, out bool EndOfStack, out Microsoft.VisualStudio.Debugger.CallStack.DkmStackHash ActualStackHash, out Microsoft.VisualStudio.Debugger.CallStack.DkmStackWalkContext ActualStackWalkContext, out bool IsCacheValid);
member this.RuntimeWalkNextFramesAndCheckCache : uint32 * uint32 * Microsoft.VisualStudio.Debugger.CallStack.DkmStackHash * bool * DkmStackHash * DkmStackWalkContext * bool -> Microsoft.VisualStudio.Debugger.CallStack.DkmStackWalkFrame[]
Public Function RuntimeWalkNextFramesAndCheckCache (RequestSizeHintIfCacheIsValid As UInteger, RequestSizeHintIfCacheIsInvalid As UInteger, CachedHash As DkmStackHash, ByRef EndOfStack As Boolean, ByRef ActualStackHash As DkmStackHash, ByRef ActualStackWalkContext As DkmStackWalkContext, ByRef IsCacheValid As Boolean) As DkmStackWalkFrame()
Parameter
- RequestSizeHintIfCacheIsValid
- UInt32
In Requestsizehintifcacheisvalid ist ein Hinweis auf die Anzahl von Frame, die der Aufrufer benötigt. Dieser Wert wird als Hinweis behandelt, da diese API Frames zurückgeben kann, die noch nicht durchlaufen wurden, sodass diese API möglicherweise mehr oder weniger als der Hinweis Wert zurückgibt. Der anforderungsgrößenhinweis 0 bedeutet, dass kein Stapel durchlaufen werden soll, wenn der Cache gültig ist.
- RequestSizeHintIfCacheIsInvalid
- UInt32
In Requestsizehintifcacheisinvalid ist ein Hinweis auf die Anzahl von Frame, die der Aufrufer benötigt. Dieser Wert wird als Hinweis behandelt, da diese API Frames zurückgeben kann, die noch nicht durchlaufen wurden, sodass diese API möglicherweise mehr oder weniger als der Hinweis Wert zurückgibt.
- CachedHash
- DkmStackHash
[In, optional] Zwischen gespeicherter aufrufsstapel-Hash führt den Stapel nicht aus, wenn der Cache noch gültig ist. Dieser Parameter ist optional. Wenn der Wert NULL ist, berechnen wir immer noch den tatsächlichen Hash und führen den Stapel Durchlauf aus, überspringen jedoch den Vergleich des tatsächlichen Hashs mit dem zwischengespeicherten Hash, um den Stapel Durchlauf zu unterdrücken.
- EndOfStack
- Boolean
Vorgenommen Gibt "true" zurück, wenn der Monitor das Ende des Stapels erreicht hat.
- ActualStackHash
- DkmStackHash
[Out, optional] Der tatsächliche Hash der-Rückruf Stapel. Dies kann bei Laufzeiten, die keine Aufrufe der Rückruf Stapel Unterstützung unterstützen, NULL sein.
- ActualStackWalkContext
- DkmStackWalkContext
Vorgenommen Das dkmstackwalkcontext-Objekt, das später zum Fortsetzen der exemplarischen Vorgehensweise verwendet werden kann. Wenn der Cache gültig ist, handelt es sich hierbei um den ursprünglichen Kontext. Wenn der Cache ungültig ist, ist dies ein neues dkmstackwalkcontext-Objekt.
- IsCacheValid
- Boolean
Vorgenommen True, wenn der Cache gültig ist, andernfalls false.
Gibt zurück
Vorgenommen Array von ausgewanderten Frames. Bei nicht aufgelösten Frames sind sowohl InstructionAddress als auch Description NULL.