Compartilhar via


Interfaces de hospedagem CLR

Esta seção descreve as interfaces que hosts não gerenciados podem usar para integrar o CLR (Common Language Runtime) em seus aplicativos. As informações pertencem ao .NET Framework versão 2.0 e versões posteriores. Essas interfaces permitem que o host controle muito mais aspectos do runtime do que era possível nas versões 1.0 e 1.1 e fornecem uma integração muito mais rígida entre o CLR e o modelo de execução do host.

No .NET Framework versão 1.0 e 1.1, o modelo de hospedagem habilitou um host não gerenciado para carregar o CLR em um processo, definir determinadas configurações e receber notificações de evento. No entanto, em geral, o host e o CLR foram executados independentemente nesse processo. No .NET Framework versão 2.0 e versões posteriores, novas camadas de abstração permitem que o host forneça muitos dos recursos atualmente fornecidos pelos tipos no assembly Win32 e estenda o conjunto de recursos que o host pode configurar.

Nesta seção

Interface IActionOnCLREvent
Fornece um método que executa um retorno de chamada para um evento registrado.

Interface IApartmentCallback
Fornece métodos para fazer retornos de chamada em um apartamento.

Interface IAppDomainBinding
Fornece métodos para definir a configuração em tempo de execução.

Interface ICatalogServices
Fornece métodos para catalogar serviços. Essa interface oferece suporte a infraestrutura do .NET Framework e não se destina a ser usada diretamente do seu código.

Interface ICLRAssemblyIdentityManager
Fornece métodos que dão suporte à comunicação entre o host e o CLR sobre assemblies.

Interface ICLRAssemblyReferenceList
Gerencia uma lista de assemblies carregados pelo CLR e não pelo host.

Interface ICLRControl
Fornece métodos para que o host obtenha acesso e configure vários aspectos do CLR.

Interface ICLRDebugManager
Fornece métodos que permitem que um host associe um conjunto de tarefas a um identificador e um nome amigável.

Interface ICLRErrorReportingManager
Fornece métodos que permitem que o host configure despejos de heap personalizados para relatórios de erros.

Interface ICLRGCManager
Fornece métodos que permitem que um host interaja com o sistema de coleta de lixo do CLR.

Interface ICLRHostBindingPolicyManager
Fornece métodos para o host avaliar e comunicar alterações nas informações de política para assemblies.

Interface ICLRHostProtectionManager
Permite que o host bloqueie a execução de classes, métodos, propriedades e campos gerenciados específicos em código parcialmente confiável.

Interface ICLRIoCompletionManager
Implementa um método de retorno de chamada que permite que o host notifique o CLR sobre o status das solicitações de E/S especificadas.

Interface ICLRMemoryNotificationCallback
Permite que o host relate as condições de pressão de memória usando uma abordagem semelhante à da função CreateMemoryResourceNotification do Win32.

Interface ICLROnEventManager
Fornece métodos que permitem que o host registre e cancele o registro de retornos de chamada para eventos de CLR.

Interface ICLRPolicyManager
Fornece métodos que permitem que o host especifique ações de política a serem executadas em caso de falhas e tempos limite.

Interface ICLRProbingAssemblyEnum
Fornece métodos que permitem que o host obtenha as identidades de sondagem de um assembly usando as informações de identidade do assembly que são internas ao CLR, sem precisar criar ou entender essa identidade.

Interface ICLRReferenceAssemblyEnum
Fornece métodos que permitem que o host manipule o conjunto de assemblies referenciado por um arquivo ou fluxo usando dados de identidade de assembly internos ao CLR, sem precisar criar ou entender essas identidades.

Interface ICLRRuntimeHost
Fornece recursos semelhantes ao ICorRuntimeHost, com um método adicional para definir a interface de controle do host.

Interface ICLRSyncManager
Fornece métodos que permitem ao host obter informações sobre as tarefas solicitadas e detectar deadlocks em sua implementação de sincronização.

Interface ICLRTask
Fornece métodos que permitem que o host faça solicitações do CLR ou forneça uma notificação ao CLR sobre a tarefa associada.

Interface ICLRTaskManager
Fornece métodos que permitem que o host solicite explicitamente que o CLR crie uma nova tarefa, obtenha a tarefa em execução no momento e defina a linguagem geográfica e a cultura para a tarefa.

Interface ICLRValidator
Fornece métodos para validar imagens executáveis portáteis (PE) e relatar erros de validação.

Interface ICorConfiguration
Fornece métodos para configurar o CLR.

Interface ICorThreadpool
Fornece métodos para acessar o pool de threads.

Interface IDebuggerInfo
Fornece métodos para obter informações sobre o estado dos serviços de depuração.

Interface IDebuggerThreadControl
Fornece métodos para notificar o host sobre o bloqueio e o desbloqueio de threads pelos serviços de depuração.

Interface IGCHost
Fornece métodos para obter informações sobre o sistema de coleta de lixo e para controlar alguns aspectos da coleta de lixo.

Interface IGCHost2
Oferece o método SetGCStartupLimitsEx, que permite que um host defina o tamanho do segmento de coleta de lixo e o tamanho máximo da geração zero do sistema de coleta de lixo para valores maiores que DWORD.

Interface IGCHostControl
Fornece um método que permite ao coletor de lixo solicitar que o host altere os limites da memória virtual.

Interface IGCThreadControl
Fornece métodos para participar do agendamento de threads que, de outra forma, seriam bloqueados para uma coleta de lixo.

Interface IHostAssemblyManager
Fornece métodos que permitem que um host especifique os conjuntos de assemblies que deverão ser carregados pelo CLR ou pelo host.

Interface IHostAssemblyStore
Fornece métodos que permitem que um host se associe a assemblies e módulos independentemente do CLR.

Interface IHostAutoEvent
Fornece uma representação de um evento de redefinição automática implementado pelo host.

Interface IHostControl
Fornece métodos para configurar o carregamento de assemblies e determinar a quais interfaces de hospedagem o host dá suporte.

Interface IHostCrst
Serve como a representação do host de uma seção crítica para threading.

Interface IHostGCManager
Fornece métodos que notificam o host de eventos no mecanismo de coleta de lixo implementado pelo CLR.

Interface IHostIoCompletionManager
Fornece métodos que permitem que o CLR interaja com portas de conclusão de E/S fornecidas pelo host.

Interface IHostMalloc
Fornece métodos para o CLR solicitar alocações refinadas do heap por meio do host.

Interface IHostManualEvent
Fornece a implementação do host de uma representação de um evento de reinicialização manual.

Interface IHostMemoryManager
Fornece métodos para que o CLR faça solicitações de memória virtual por meio do host, em vez de usar as funções de memória virtual Win32 padrão.

Interface IHostPolicyManager
Fornece métodos que notificam o host das ações que o CLR executa em caso de anulações, tempos limite ou falhas.

Interface IHostSecurityContext
Permite que o CLR mantenha as informações de contexto de segurança implementadas pelo host.

Interface IHostSecurityManager
Fornece métodos que permitem acesso e controle sobre o contexto de segurança do thread em execução no momento.

Interface IHostSemaphore
Fornece uma representação de um semáforo implementado pelo host.

Interface IHostSyncManager
Fornece métodos para o CLR criar primitivos de sincronização chamando o host, em vez de usar as funções de sincronização do Win32.

Interface IHostTask
Fornece métodos que permitem que o CLR se comunique com o host para gerenciar tarefas.

Interface IHostTaskManager
Fornece métodos que permitem que o CLR trabalhe com tarefas por meio do host em vez de usar as funções de fibra ou threading do sistema operacional padrão.

Interface IHostThreadPoolManager
Fornece métodos para o CLR configurar o pool de threads e enfileirar itens de trabalho para o pool de threads.

Interface IManagedObject
Fornece métodos para controlar um objeto gerenciado.

"IObjectHandle"
Fornece um método para desencapsular objetos marshal-by-value de uma indireção.

Interface ITypeName
Fornece métodos para obter informações de nome de tipo. Essa interface oferece suporte a infraestrutura do .NET Framework e não se destina a ser usada diretamente do seu código.

Interface ITypeNameBuilder
Fornece métodos para a criação de um nome do tipo. Essa interface oferece suporte a infraestrutura do .NET Framework e não se destina a ser usada diretamente do seu código.

Interface ITypeNameFactory
Fornece métodos para desconstruir um nome de tipo. Essa interface oferece suporte a infraestrutura do .NET Framework e não se destina a ser usada diretamente do seu código.

"IValidator"
Fornece métodos para validar imagens executáveis portáteis (PE) e relatar erros de validação.

Interfaces e coclasse de hospedagem CLR reprovadas
Contém tópicos que descrevem as interfaces de hospedagem fornecidas no .NET Framework versão 1.0 e 1.1.

Interfaces de hospedagem CLR adicionadas no .NET Framework 4 e 4.5
Contém tópicos que descrevem as interfaces de hospedagem fornecidas no .NET Framework 4.