Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Fornece métodos que são usados pelo common linguagem tempo de execução (CLR) para notificar um criador de perfil de código quando ocorrem os eventos que o criador de perfil tem se inscreveu. The ICorProfilerCallback2 interface é uma extensão das ICorProfilerCallback interface. Ou seja, ele fornece novos retornos de chamada introduzidos no .NET estrutura versão 2.0.
Observação: |
|---|
Cada implementação do método deve retornar uma HRESULT com um valor de S_OK no sucesso ou E_FAIL em caso de falha. Atualmente, o CLR ignora o HRESULT que é retornado por cada chamada de retorno, exceto ICorProfilerCallback::ObjectReferences. |
interface ICorProfilerCallback2 : ICorProfilerCallback
{
HRESULT ThreadNameChanged(
[in] ThreadID threadId,
[in] ULONG cchName,
[in] WCHAR name[]);
HRESULT GarbageCollectionStarted(
[in] int cGenerations,
[in, size_is(cGenerations), length_is(cGenerations)] BOOL generationCollected[],
[in] COR_PRF_GC_REASON reason);
HRESULT SurvivingReferences(
[in] ULONG cSurvivingObjectIDRanges,
[in, size_is(cSurvivingObjectIDRanges)] ObjectID objectIDRangeStart[] ,
[in, size_is(cSurvivingObjectIDRanges)] ULONG cObjectIDRangeLength[] );
HRESULT GarbageCollectionFinished();
HRESULT FinalizeableObjectQueued(
[in] DWORD finalizerFlags,
[in] ObjectID objectID);
HRESULT RootReferences2(
[in] ULONG cRootRefs,
[in, size_is(cRootRefs)] ObjectID rootRefIds[],
[in, size_is(cRootRefs)] COR_PRF_GC_ROOT_KIND rootKinds[],
[in, size_is(cRootRefs)] COR_PRF_GC_ROOT_FLAGS rootFlags[],
[in, size_is(cRootRefs)] UINT_PTR rootIds[]);
HRESULT HandleCreated(
[in] GCHandleID handleId,
[in] ObjectID initialObjectId);
HRESULT HandleDestroyed(
[in] GCHandleID handleId);
}
Métodos
Método |
Descrição |
|---|---|
Notifica o criador de perfil de código que um objeto com um finalizador foi na na fila para o thread do finalizador para execução do seu Finalize método. |
|
Notifica o criador de perfil que um lixo coleção foi concluída e todos os lixo coleção retornos de chamada tem sido emitidos por ela. |
|
Notifica o criador de perfil de código que um lixo coleção foi iniciado. |
|
Notifica o criador de perfil de código que um lixo coleção identificador foi criado. |
|
Notifica o criador de perfil de código que um lixo coleção identificador foi destruído. |
|
Notifica o criador de perfil sobre referências raiz após um lixo coleção ocorreu. Esse método é uma extensão do ICorProfilerCallback::RootReferences método. |
|
Notifica o criador de perfil sobre referências de objeto que tenha uma coleta de lixo sobrevividas. |
|
Notifica o criador de perfil de código que o nome de um thread foi alterado. |
Comentários
O CLR chama um método no ICorProfilerCallback (ou ICorProfilerCallback2) interface para notificar o criador de perfil quando um evento, que o criador de perfil tinha inscrito, ocorre. Essa é a interface de retorno de chamada principal através do qual o CLR se comunica com o criador de perfil de código.
Um criador de perfil de código deve implementar os métodos do ICorProfilerCallback interface. Para o .NET estrutura 2.0 e versões posteriores, o criador de perfil também deve implementar o ICorProfilerCallback2 métodos. Cada implementação do método deve retornar um HRESULT que tiver o valor S_OK no sucesso ou E_FAIL em caso de falha. Atualmente, o CLR ignora o HRESULT retornado por cada chamada de retorno, exceto ICorProfilerCallback::ObjectReferences.
Um criador de perfil de código deve registrar no registro do Microsoft Windows, seu objeto COM que implementa o ICorProfilerCallback e ICorProfilerCallback2 interfaces. Os eventos para o qual deseja receber uma notificação chamando assina um criador de perfil de códigoICorProfilerInfo::SetEventMask. Normalmente, isso é concluído na implementação do criador de perfil de ICorProfilerCallback::inicializar. O criador de perfil, em seguida, é capaz de receber notificação de tempo de execução quando um evento está prestes a ocorrer ou ocorreu apenas em um processo em execução do tempo de execução.
Observação: |
|---|
O criador de perfil registra um único objeto COM. Se o criador de perfil se destina a .NET estrutura versão 1 . 0 ou 1,1 , que o objeto COM apenas precisa implementam os métodos de ICorProfilerCallback. Se ele é objetivo .NET estrutura versão 2.0 e posterior, o objeto COM também deve implementar os métodos de ICorProfilerCallback2. |
Requisitos
Plataformas: See Requisitos de sistema do .NET framework.
Cabeçalho: CorProf.idl
Biblioteca: CorGuids.lib
.NET Framework Versions: 3.5 SP1, 3,5, 3.0 SP1, 3.0, 2.0 SP1, 2.0
Consulte também
Referência
Interface ICorProfilerCallback
Observação: