Partilhar via


Interfaces de Alojamento CLR

Esta secção descreve as interfaces que os hosts não geridos podem usar para integrar o common language runtime (CLR) nas suas aplicações. A informação diz respeito ao .NET Framework versão 2.0 e versões posteriores. Estas interfaces permitem ao host controlar muitos mais aspetos do runtime do que era possível nas versões 1.0 e 1.1, e proporcionam uma integração muito mais estreita entre o CLR e o modelo de execução do host.

No .NET Framework versões 1.0 e 1.1, o modelo de alojamento permitia a um host não gerido carregar o CLR num processo, configurar certas definições e receber notificações de eventos. No entanto, em geral, o anfitrião e o CLR corriam 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 capacidades que o host pode configurar.

Na presente seção

Interface IActionOnCLREvent Fornece um método que realiza um callback para um evento registado.

Interface IApartmentCallback Fornece métodos para fazer chamadas de retorno dentro de um apartamento.

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

Interface ICatalogServices Fornece métodos para serviços de catalogação. (Esta interface suporta a infraestrutura .NET Framework e não é destinada a ser usada diretamente a partir do seu código.)

Interface ICLRAssemblyIdentityManager Fornece métodos que suportam a comunicação entre o host e o CLR sobre assemblies.

Interface ICLRAssemblyReferenceList Gere uma lista de assemblies que são carregadas pelo CLR e não pelo host.

Interface ICLRControl Fornece métodos para o host aceder e configurar vários aspetos do CLR.

Interface ICLRDebugManager Fornece métodos que permitem a um host associar um conjunto de tarefas a um identificador e um nome amigo.

Interface ICLRErrorReportingManager Fornece métodos que permitem ao host configurar dumps de heap personalizados para reportar erros.

Interface ICLRGCManager Fornece métodos que permitem a um host interagir com o sistema de recolha de lixo do CLR.

Interface ICLRHostBindingPolicyManager Fornece métodos para que o anfitrião avalie e comunique alterações na informação de políticas para assembleias.

Interface ICLRHostProtectionManager Permite ao host bloquear classes, métodos, propriedades e campos geridos específicos para que não corram em código parcialmente confiável.

Interface ICLRIoCompletionManager Implementa um método de callback que permite ao host notificar o CLR do estado dos pedidos de E/S especificados.

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

Interface ICLROnEventManager Fornece métodos que permitem ao host registar e desregistar callbacks para eventos CLR.

Interface ICLRPolicyManager Fornece métodos que permitem ao anfitrião especificar ações políticas a realizar em caso de falhas e timeouts.

Interface ICLRProbingAssemblyEnum Fornece métodos que permitem ao anfitrião obter as identidades de sondagem de um conjunto usando a informação de identidade interna do conjunto ao CLR, sem necessidade de criar ou compreender essa identidade.

Interface ICLRReferenceAssemblyEnum Fornece métodos que permitem ao host manipular o conjunto de assemblies referenciados por um ficheiro ou stream usando dados de identidade de assembly internos ao CLR, sem necessidade de criar ou compreender essas identidades.

Interface ICLRRuntimeHost Oferece capacidades semelhantes ao ICorRuntimeHost, com um método adicional para definir a interface de controlo do host.

Interface ICLRSyncManager Fornece métodos para o host obter informações sobre tarefas solicitadas e detetar deadlocks na sua implementação de sincronização.

Interface ICLRTask Fornece métodos que permitem ao anfitrião fazer pedidos ao CLR ou notificar o CLR sobre a tarefa associada.

Interface ICLRTaskManager Fornece métodos que permitem ao anfitrião solicitar explicitamente que o CLR crie uma nova tarefa, obtenha a tarefa atualmente em execução e defina a linguagem geográfica e a cultura da tarefa.

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

Interface ICorConfiguration Fornece métodos para configurar o CLR.

Interface ICorThreadpool Fornece métodos para aceder ao 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 desbloqueio de threads pelos serviços de depuração.

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

Interface IGCHost2 Fornece o método SetGCStartupLimitsEx que permite a um host definir o tamanho do segmento de recolha de lixo e o tamanho máximo da geração zero do sistema de recolha de lixo para valores superiores a DWORD.

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

Interface IGCThreadControl Fornece métodos para participar no escalonamento de threads que, de outra forma, seriam bloqueados para recolha de lixo.

Interface IHostAssemblyManager Fornece métodos que permitem a um host especificar conjuntos de assemblies que devem ser carregados pelo CLR ou pelo host.

Interface IHostAssemblyStore Fornece métodos que permitem a um host carregar conjuntos e módulos independentemente do CLR.

Interface IHostAutoEvent Fornece uma representação de um evento de auto-reset implementado pelo anfitrião.

Interface IHostControl Fornece métodos para configurar o carregamento de assemblies e para determinar quais as interfaces de alojamento que o host suporta.

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

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

Interface IHostIoCompletionManager Fornece métodos que permitem ao CLR interagir com portas de conclusão de I/O fornecidas pelo anfitrião.

IHostMalloc Interface Fornece métodos para o CLR solicitar alocações detalhadas do heap através do host.

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

Interface IHostMemoryManager Fornece métodos para que o CLR faça pedidos de memória virtual através do anfitrião, em vez de usar as funções padrão de memória virtual Win32.

Interface IHostPolicyManager Fornece métodos que notificam o host das ações que o CLR realiza em caso de abortos, timeouts ou falhas.

Interface IHostSecurityContext Permite ao CLR manter a informação de contexto de segurança implementada pelo host.

Interface IHostSecurityManager Fornece métodos que permitem o acesso e controlo ao contexto de segurança da thread atualmente em execução.

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

Interface IHostSyncManager Fornece métodos para que o CLR crie primitivas de sincronização chamando o anfitrião, em vez de usar as funções de sincronização Win32.

Interface IHostTask Fornece métodos que permitem ao CLR comunicar com o host para gerir tarefas.

Interface do IHostTaskManager Fornece métodos que permitem ao CLR trabalhar com tarefas através do host em vez de usar o sistema operativo padrão de threading ou funções de fibra.

Interface IHostThreadPoolManager Fornece métodos para o CLR configurar o pool de threads e colocar os itens de trabalho na fila para o pool de threads.

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

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

Interface ITypeName Fornece métodos para obter informação sobre nomes de tipos. (Esta interface suporta a infraestrutura .NET Framework e não é destinada a ser usada diretamente a partir do seu código.)

Interface ITypeNameBuilder Fornece métodos para construir um nome de tipo. (Esta interface suporta a infraestrutura .NET Framework e não é destinada a ser usada diretamente a partir do seu código.)

Interface ITypeNameFactory Fornece métodos para desconstruir um nome de tipo. (Esta interface suporta a infraestrutura .NET Framework e não é destinada a ser usada diretamente a partir do seu código.)

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

Interfaces e Coclasses de Alojamento CLR obsoletas Contém tópicos que descrevem as interfaces de alojamento fornecidas nas versões 1.0 e 1.1 do .NET Framework.

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