DkmStackContext Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Os objetos DkmStackContext são criados por componentes que desejam solicitar a pilha do provedor de pilha. Um componente precisa fechar o contexto depois de concluir a movimentação da pilha. Para obter a pilha, um componente deve criar esse objeto e, em seguida, chamar GetNextFrames.
Classes derivadas: DkmStackTraceContext
public ref class DkmStackContext : Microsoft::VisualStudio::Debugger::DkmDataContainer, IDisposable
[System.Runtime.InteropServices.Guid("90f8ca28-617f-0b13-f421-fa6f1159973e")]
public class DkmStackContext : Microsoft.VisualStudio.Debugger.DkmDataContainer, IDisposable
[<System.Runtime.InteropServices.Guid("90f8ca28-617f-0b13-f421-fa6f1159973e")>]
type DkmStackContext = class
inherit DkmDataContainer
interface IDisposable
Public Class DkmStackContext
Inherits DkmDataContainer
Implements IDisposable
- Herança
- Derivado
- Atributos
- Implementações
Propriedades
| AsyncContext |
Adicional Se estivermos buscando os quadros de continuação ou os quadros de criação de tarefa, especifique o contexto para a operação de movimentação de pilha assíncrona. Essa API foi introduzida no Visual Studio 12 RTM (DkmApiVersion. VS12RTM). |
| FilterOptions |
Opções de como a pilha de chamadas deve ser filtrada. |
| FormatOptions |
Coleção de configurações que afetam como o provedor de pilha formata um DkmStackFrame. |
| InspectionSession |
O DkmInspectionSession permite que os vários componentes inspecionem dados para armazenar dados privados que estão associados a um grupo de avaliações. |
| IsUnloaded |
Retornará true se um evento ' Unloaded ' tiver sido gerado para este objeto (exemplo: DkmThread:: Unload é chamado) ou se o objeto foi fechado. Observe que o cuidado deve ser usado ao verificar esse status como, sem sincronização, o status retornado pode não ser mais preciso na instrução após sua leitura. (Herdado de DkmDataContainer) |
| Operation |
Que tipo de movimentação de pilha estamos fazendo. Se a operação for AsyncReturnStackWalk ou AsyncTaskCreationStackWalk, "Task" deverá ser não nulo. Caso contrário, "AsyncContext" deve ser nulo. Essa API foi introduzida no Visual Studio 12 RTM (DkmApiVersion. VS12RTM). |
| Thread |
DkmThread representa um thread em execução no processo de destino. |
| ThreadContext |
Adicional O contexto de thread inicial a ser usado ao executar a movimentação da pilha. Esse valor é normalmente ' NULL ', mas pode ser definido para exibir outra pilha de chamadas (ex:. CXR). |
| UniqueId |
GUID que identifica exclusivamente este DkmStackContext. |
Métodos
| Close() |
Fecha uma instância do objeto DkmStackContext. Isso liberará todos os recursos associados a esse objeto em todos os componentes. Isso inclui recursos no computador ou limites de Marshalling gerenciado/nativo. Os objetos DkmStackContext são fechados automaticamente quando seu objeto DkmInspectionSession associado é fechado. Esse método só pode ser chamado pelo componente que criou o objeto. Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000). |
| Create(DkmInspectionSession, DkmThread, DkmCallStackFilterOptions, DkmFrameFormatOptions, ReadOnlyCollection<Byte>, DkmAsyncStackWalkContext, DkmStackWalkOperation, DkmDataItem) |
Crie uma nova instância do objeto DkmStackContext. O chamador é responsável por fechar o objeto criado depois que eles são concluídos. Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000). Essa API foi introduzida no Visual Studio 12 RTM (DkmApiVersion. VS12RTM). |
| Create(DkmInspectionSession, DkmThread, DkmCallStackFilterOptions, DkmFrameFormatOptions, ReadOnlyCollection<Byte>, DkmDataItem) |
Crie uma nova instância do objeto DkmStackContext. O chamador é responsável por fechar o objeto criado depois que eles são concluídos. Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000). |
| GetDataItem<T>() |
Obtém a instância de ' T' que foi adicionada a esta instância de contêiner. Se esse contêiner não contiver um ' T', essa função retornará NULL. (Herdado de DkmDataContainer) |
| GetNextFrames(DkmWorkList, Int32, DkmCompletionRoutine<DkmGetNextFramesAsyncResult>) |
Obtenha os próximos quadros da pilha de chamadas. Se esta for a primeira chamada em um determinado DkmStackContext, isso retornará os primeiros quadros. Esse método é a maneira recomendada para obter a pilha de chamadas porque o provedor de pilha mantém um cache da pilha física. Esse método acrescentará um novo item de trabalho à lista de trabalho especificada e retornará assim que o item de trabalho tiver sido anexado. O processamento real do item de trabalho é assíncrono. O chamador será notificado de que a solicitação foi concluída por meio da rotina de conclusão. Restrição de local: a API deve ser chamada de um componente IDE (nível de componente > 100.000). |
| RemoveDataItem<T>() |
Remova a instância de ' T' deste contêiner. Normalmente, é desnecessário chamar esse método, pois um contêiner de dados será automaticamente esvaziado quando o objeto for fechado. (Herdado de DkmDataContainer) |
| SetDataItem<T>(DkmDataCreationDisposition, T) |
Coloque um novo item no contêiner de dados. (Herdado de DkmDataContainer) |
Implantações explícitas de interface
| IDisposable.Dispose() |
A ser adicionado. |