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 в противном случае.
Возвращаемое значение
Заполняет Массив кадров с обходом. Для неразрешенных кадров и Инструктионаддресс, и Description будут иметь значение null.