DkmStackWalkContext.RuntimeWalkNextFramesAndCheckCache Метод

Определение

Перегрузки

RuntimeWalkNextFramesAndCheckCache(DkmWorkList, UInt32, UInt32, DkmStackHash, DkmCompletionRoutine<DkmRuntimeWalkNextFramesAndCheckCacheAsyncResult>)

Не рекомендуется. Не используйте этот метод, он возвращает значения хэша из-за истечения. Вместо этого используйте IDkmMergedMonitorStackWalk164:: RuntimeWalkNextFramesAndCheckCache164. Версия Рунтимевалкнекстфрамес (), которая также проверяет, является ли кэшированная копия стека вызовов действительной.

Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения.

RuntimeWalkNextFramesAndCheckCache(UInt32, UInt32, DkmStackHash, Boolean, DkmStackHash, DkmStackWalkContext, Boolean)

Не рекомендуется. Не используйте этот метод, он возвращает значения хэша из-за истечения. Вместо этого используйте IDkmMergedMonitorStackWalk164:: RuntimeWalkNextFramesAndCheckCache164. Версия Рунтимевалкнекстфрамес (), которая также проверяет, является ли кэшированная копия стека вызовов действительной.

RuntimeWalkNextFramesAndCheckCache(DkmWorkList, UInt32, UInt32, DkmStackHash, DkmCompletionRoutine<DkmRuntimeWalkNextFramesAndCheckCacheAsyncResult>)

Не рекомендуется. Не используйте этот метод, он возвращает значения хэша из-за истечения. Вместо этого используйте IDkmMergedMonitorStackWalk164:: RuntimeWalkNextFramesAndCheckCache164. Версия Рунтимевалкнекстфрамес (), которая также проверяет, является ли кэшированная копия стека вызовов действительной.

Этот метод добавляет новый рабочий элемент в указанный список работ и возвращается после добавления рабочего элемента. Фактическая обработка рабочего элемента выполняется асинхронно. Вызывающий объект будет уведомлен о завершении выполнения запроса через подпрограмму завершения.

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))

Параметры

WorkList
DkmWorkList

Ворклист добавить новый рабочий элемент в.

RequestSizeHintIfCacheIsValid
UInt32

Окне Рекуестсизехинтифкачеисвалид — это подсказка, относящаяся к количеству кадров, необходимых вызывающему объекту. Это значение рассматривается как подсказка, так как этот API может возвращать кадры, которые еще не просмотрелись, поэтому этот API может возвращать больше или меньше значения подсказки. Указание размера запроса 0 означает, что не нужно выполнять анализ стека, если кэш является допустимым.

RequestSizeHintIfCacheIsInvalid
UInt32

Окне Рекуестсизехинтифкачеисинвалид — это подсказка, относящаяся к количеству кадров, необходимых вызывающему объекту. Это значение рассматривается как подсказка, так как этот API может возвращать кадры, которые еще не просмотрелись, поэтому этот API может возвращать больше или меньше значения подсказки.

CachedHash
DkmStackHash

[Входные, необязательные] Кэшированный хэш стека вызовов не будет проходить по стеку, если кэш по-прежнему является допустимым. Это необязательный параметр. Если значение равно null, будет по-прежнему вычисляться фактический хэш и выполнен анализ стека, но будет пропущено сравнение фактического хэша с кэшированным хэшем, чтобы подавить проверку стека.

CompletionRoutine
DkmCompletionRoutine<DkmRuntimeWalkNextFramesAndCheckCacheAsyncResult>

Подпрограмма, которая будет срабатывать после завершения запроса. Если запрос успешно добавлен в список работ, он всегда будет срабатывать (включая время отмены операции). Это никогда не будет срабатывать в случае сбоя при добавлении рабочего элемента.

Применяется к

RuntimeWalkNextFramesAndCheckCache(UInt32, UInt32, DkmStackHash, Boolean, DkmStackHash, DkmStackWalkContext, Boolean)

Не рекомендуется. Не используйте этот метод, он возвращает значения хэша из-за истечения. Вместо этого используйте IDkmMergedMonitorStackWalk164:: RuntimeWalkNextFramesAndCheckCache164. Версия Рунтимевалкнекстфрамес (), которая также проверяет, является ли кэшированная копия стека вызовов действительной.

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()

Параметры

RequestSizeHintIfCacheIsValid
UInt32

Окне Рекуестсизехинтифкачеисвалид — это подсказка, относящаяся к количеству кадров, необходимых вызывающему объекту. Это значение рассматривается как подсказка, так как этот API может возвращать кадры, которые еще не просмотрелись, поэтому этот API может возвращать больше или меньше значения подсказки. Указание размера запроса 0 означает, что не нужно выполнять анализ стека, если кэш является допустимым.

RequestSizeHintIfCacheIsInvalid
UInt32

Окне Рекуестсизехинтифкачеисинвалид — это подсказка, относящаяся к количеству кадров, необходимых вызывающему объекту. Это значение рассматривается как подсказка, так как этот API может возвращать кадры, которые еще не просмотрелись, поэтому этот API может возвращать больше или меньше значения подсказки.

CachedHash
DkmStackHash

[Входные, необязательные] Кэшированный хэш стека вызовов не будет проходить по стеку, если кэш по-прежнему является допустимым. Это необязательный параметр. Если значение равно null, будет по-прежнему вычисляться фактический хэш и выполнен анализ стека, но будет пропущено сравнение фактического хэша с кэшированным хэшем, чтобы подавить проверку стека.

EndOfStack
Boolean

Заполняет Возвращает значение true, если монитор достиг конца стека.

ActualStackHash
DkmStackHash

[Out, необязательно] Фактический хэш стека вызовов. Это может быть значение NULL для сред выполнения, которые не поддерживают хэширование стека вызовов.

ActualStackWalkContext
DkmStackWalkContext

Заполняет Объект Дкмстакквалкконтекст, который можно использовать позже для продолжения анализа. Если кэш является допустимым, это исходный контекст. Если кэш является недопустимым, это будет новый объект Дкмстакквалкконтекст.

IsCacheValid
Boolean

Заполняет Значение true, если кэш является допустимым, и значение false в противном случае.

Возвращаемое значение

DkmStackWalkFrame[]

Заполняет Массив кадров с обходом. Для неразрешенных кадров и Инструктионаддресс, и Description будут иметь значение null.

Применяется к