Partilhar via


ICorProfilerCallback2 Interface

Fornece métodos que são utilizados pelo common language runtime (CLR) para notificar um gerador de perfis de código quando ocorrem os eventos aos quais o gerador de perfis subscreveu. A ICorProfilerCallback2 interface é uma extensão da interface ICorProfilerCallback . Ou seja, fornece novas chamadas de retorno introduzidas no .NET Framework versão 2.0.

Nota

Cada implementação de método tem de devolver um HRESULT com um valor de S_OK com êxito ou E_FAIL em caso de falha. Atualmente, o CLR ignora o HRESULT que é devolvido por cada chamada de retorno, exceto ICorProfilerCallback::ObjectReferences.

Métodos

Método Descrição
Método FinalizeableObjectQueued Notifica o gerador de perfis de código de que um objeto com um finalizador foi colocado em fila para o thread de finalizador para execução do respetivo Finalize método.
Método GarbageCollectionFinished Notifica o gerador de perfis de que foi concluída uma libertação da memória e que foram emitidas todas as chamadas de retorno da libertação da memória.
Método GarbageCollectionStarted Notifica o gerador de perfis de código de que foi iniciada uma libertação da memória.
Método HandleCreated Notifica o gerador de perfis de código de que foi criada uma alça de libertação da memória.
Método HandleDestroyed Notifica o gerador de perfis de código de que foi destruída uma alça de libertação da memória.
Método RootReferences2 Notifica o gerador de perfis sobre referências de raiz depois de ter ocorrido uma libertação da memória. Este método é uma extensão do método ICorProfilerCallback::RootReferences .
Método SurvivingReferences Notifica o gerador de perfis sobre referências de objetos que sobreviveram a uma libertação da memória.
ThreadNameChanged Method Notifica o gerador de perfis de código de que o nome de um thread foi alterado.

Observações

O CLR chama um método na ICorProfilerCallback interface (ou ICorProfilerCallback2) para notificar o gerador de perfis quando ocorre um evento, ao qual o gerador de perfis tinha subscrito. Esta é a interface de chamada de retorno principal através da qual o CLR comunica com o gerador de perfis de código.

Um gerador de perfis de código tem de implementar os métodos da ICorProfilerCallback interface. Para o .NET Framework 2.0 e versões posteriores, o gerador de perfis também tem de implementar os ICorProfilerCallback2 métodos. Cada implementação de método tem de devolver um HRESULT com um valor de S_OK com êxito ou E_FAIL em caso de falha. Atualmente, o CLR ignora o HRESULT que é devolvido por cada chamada de retorno, exceto ICorProfilerCallback::ObjectReferences.

Um gerador de perfis de código tem de se registar no registo do Microsoft Windows, o respetivo objeto COM que implementa as ICorProfilerCallback interfaces e ICorProfilerCallback2 . Um gerador de perfis de código subscreve os eventos para os quais pretende receber uma notificação ao chamar ICorProfilerInfo::SetEventMask. Normalmente, isto é feito na implementação de ICorProfilerCallback::Initialize do gerador de perfis. Em seguida, o gerador de perfis pode receber uma notificação do runtime quando um evento está prestes a ocorrer ou apenas ocorreu num processo de runtime em execução.

Nota

O gerador de perfis regista um único objeto COM. Se o gerador de perfis tiver como destino .NET Framework versão 1.0 ou 1.1, esse objeto COM só precisa de implementar os métodos de ICorProfilerCallback. Se tiver como destino .NET Framework versão 2.0 e posterior, o objeto COM também tem de implementar os métodos de ICorProfilerCallback2.

Requisitos

Plataformas: Veja Requisitos de Sistema.

Cabeçalho: CorProf.idl, CorProf.h

Biblioteca: CorGuids.lib

.NET Framework Versões: Disponível desde 2.0

Ver também