Partager via


Interfaces d’hébergement CLR

Cette section décrit les interfaces que les hôtes non managés peuvent utiliser pour intégrer le Common Language Runtime (CLR) dans leurs applications. Les informations se rapportent à .NET Framework version 2.0 et versions ultérieures. Ces interfaces permettent à l’hôte de contrôler beaucoup plus d’aspects du runtime que possible dans les versions 1.0 et 1.1, et de fournir une intégration beaucoup plus étroite entre le CLR et le modèle d’exécution de l’hôte.

Dans .NET Framework version 1.0 et 1.1, le modèle d’hébergement a activé un hôte non managé pour charger le CLR dans un processus, configurer certains paramètres et recevoir des notifications d’événements. Toutefois, en général, l’hôte et le CLR s’exécutaient indépendamment dans ce processus. Dans .NET Framework version 2.0 et versions ultérieures, de nouvelles couches d’abstraction permettent à l’hôte de fournir de nombreuses ressources actuellement fournies par les types dans l’assembly Win32 et d’étendre l’ensemble de fonctionnalités que l’hôte peut configurer.

Dans cette section

IActionOnCLREvent, interface Fournit une méthode qui effectue un rappel pour un événement inscrit.

IApartmentCallback, interface Fournit des méthodes pour effectuer des rappels au sein d’un appartement.

IAppDomainBinding, interface Fournit des méthodes pour définir la configuration du runtime.

ICatalogServices, interface Fournit des méthodes pour le catalogage des services. (Cette interface prend en charge l’infrastructure .NET Framework et n’est pas destinée à être utilisée directement à partir de votre code.)

ICLRAssemblyIdentityManager, interface Fournit des méthodes qui prennent en charge la communication entre l’hôte et le CLR sur les assemblys.

ICLRAssemblyReferenceList, interface Gère une liste d’assemblys chargés par le CLR et non par l’hôte.

Interface ICLRControl Fournit des méthodes pour que l’hôte accède et configure différents aspects du CLR.

ICLRDebugManager, interface Fournit des méthodes qui permettent à un hôte d’associer un ensemble de tâches à un identificateur et à un nom convivial.

ICLRErrorReportingManager, interface Fournit des méthodes qui permettent à l’hôte de configurer des vidages de tas personnalisés pour la création de rapports d’erreurs.

ICLRGCManager, interface Fournit des méthodes qui permettent à un hôte d’interagir avec le système de garbage collection du CLR.

ICLRHostBindingPolicyManager, interface Fournit des méthodes permettant à l’hôte d’évaluer et de communiquer les modifications apportées aux informations de stratégie pour les assemblys.

ICLRHostProtectionManager, interface Permet à l’hôte de bloquer des classes, méthodes, propriétés et champs managés spécifiques de s’exécuter dans du code partiellement approuvé.

ICLRIoCompletionManager, interface Implémente une méthode de rappel qui permet à l’hôte de notifier le CLR de l’état des demandes d’E/S spécifiées.

ICLRMemoryNotificationCallback, interface Permet à l’hôte de signaler des conditions de pression de mémoire à l’aide d’une approche similaire à celle de la fonction Win32 CreateMemoryResourceNotification .

ICLROnEventManager, interface Fournit des méthodes qui permettent à l’hôte d’inscrire et de désinscrire des rappels pour les événements CLR.

ICLRPolicyManager, interface Fournit des méthodes qui permettent à l’hôte de spécifier des actions de stratégie à entreprendre en cas d’échecs et de délais d’expiration.

ICLRProbingAssemblyEnum, interface Fournit des méthodes qui permettent à l’hôte d’obtenir les identités de détection d’un assembly à l’aide des informations d’identité de l’assembly internes au CLR, sans avoir à créer ou à comprendre cette identité.

ICLRReferenceAssemblyEnum, interface Fournit des méthodes qui permettent à l’hôte de manipuler l’ensemble d’assemblys référencés par un fichier ou un flux à l’aide de données d’identité d’assembly internes au CLR, sans avoir à créer ou à comprendre ces identités.

ICLRRuntimeHost, interface Fournit des fonctionnalités similaires à ICorRuntimeHost, avec une méthode supplémentaire pour définir l’interface de contrôle hôte.

Interface ICLRSyncManager Fournit des méthodes permettant à l’hôte d’obtenir des informations sur les tâches demandées et de détecter les blocages dans son implémentation de synchronisation.

ICLRTask, interface Fournit des méthodes qui permettent à l’hôte d’effectuer des requêtes du CLR ou de fournir une notification au CLR sur la tâche associée.

ICLRTaskManager, interface Fournit des méthodes qui permettent à l’hôte de demander explicitement que le CLR crée une tâche, obtient la tâche en cours d’exécution et définit la langue géographique et la culture de la tâche.

ICLRValidator, interface Fournit des méthodes pour valider des images exécutables portables (PE) et signaler des erreurs de validation.

ICorConfiguration, interface Fournit des méthodes pour configurer le CLR.

ICorThreadpool, interface Fournit des méthodes pour accéder au pool de threads.

IDebuggerInfo, interface Fournit des méthodes pour obtenir des informations sur l’état des services de débogage.

IDebuggerThreadControl, interface Fournit des méthodes pour notifier l’hôte sur le blocage et le déblocage des threads par les services de débogage.

INTERFACE HOSTHost Fournit des méthodes pour obtenir des informations sur le système de garbage collection et pour contrôler certains aspects du garbage collection.

INTERFACE CSIHost2 Fournit la méthode SetGCStartupLimitsEx qui permet à un hôte de définir la taille du segment de garbage collection et la taille maximale de la génération zéro du système de garbage collection sur les valeurs supérieures DWORDà .

INTERFACE CSIHostControl Fournit une méthode qui permet au garbage collector de demander à l’hôte de modifier les limites de mémoire virtuelle.

INTERFACE CSIThreadControl Fournit des méthodes pour participer à la planification des threads qui seraient autrement bloqués pour le garbage collection.

IHostAssemblyManager, interface Fournit des méthodes qui permettent à un hôte de spécifier des ensembles d’assemblys qui doivent être chargés par le CLR ou par l’hôte.

IHostAssemblyStore, interface Fournit des méthodes qui permettent à un hôte de charger des assemblys et des modules indépendamment du CLR.

IHostAutoEvent, interface Fournit une représentation d’un événement de réinitialisation automatique implémentée par l’hôte.

IHostControl, interface Fournit des méthodes pour configurer le chargement des assemblys et déterminer les interfaces d’hébergement prises en charge par l’hôte.

IHostCrst, interface Sert de représentation de l’hôte d’une section critique pour le threading.

IHostGCManager, interface Fournit des méthodes qui informent l’hôte des événements dans le mécanisme de garbage collection implémenté par le CLR.

IHostIoCompletionManager, interface Fournit des méthodes qui permettent au CLR d’interagir avec les ports d’achèvement d’E/S fournis par l’hôte.

IHostMalloc, interface Fournit des méthodes pour que le CLR demande des allocations affinées du tas via l’hôte.

IHostManualEvent, interface Fournit l’implémentation de l’hôte d’une représentation d’un événement de réinitialisation manuelle.

IHostMemoryManager, interface Fournit des méthodes pour que le CLR effectue des requêtes de mémoire virtuelle via l’hôte, au lieu d’utiliser les fonctions de mémoire virtuelle Win32 standard.

IHostPolicyManager, interface Fournit des méthodes qui informent l’hôte des actions effectuées par le CLR en cas d’abandons, de délais d’attente ou d’échecs.

IHostSecurityContext, interface Permet au CLR de gérer les informations de contexte de sécurité implémentées par l’hôte.

IHostSecurityManager, interface Fournit des méthodes qui permettent l’accès et le contrôle sur le contexte de sécurité du thread en cours d’exécution.

IHostSemaphore, interface Fournit une représentation d’un sémaphore implémenté par l’hôte.

IHostSyncManager, interface Fournit des méthodes pour que le CLR crée des primitives de synchronisation en appelant l’hôte, au lieu d’utiliser les fonctions de synchronisation Win32.

IHostTask, interface Fournit des méthodes qui permettent au CLR de communiquer avec l’hôte pour gérer les tâches.

IHostTaskManager, interface Fournit des méthodes qui permettent au CLR de travailler avec des tâches via l’hôte au lieu d’utiliser les fonctions de thread ou de fibre du système d’exploitation standard.

IHostThreadPoolManager, interface Fournit des méthodes pour que le CLR configure le pool de threads et met en file d’attente les éléments de travail dans le pool de threads.

IManagedObject, interface Fournit des méthodes pour contrôler un objet managé.

« IObjectHandle » Fournit une méthode permettant de désencapsuler les objets marshal-by-value d’indirection.

ITypeName, interface Fournit des méthodes pour obtenir des informations de nom de type. (Cette interface prend en charge l’infrastructure .NET Framework et n’est pas destinée à être utilisée directement à partir de votre code.)

ITypeNameBuilder, interface Fournit des méthodes pour créer un nom de type. (Cette interface prend en charge l’infrastructure .NET Framework et n’est pas destinée à être utilisée directement à partir de votre code.)

ITypeNameFactory, interface Fournit des méthodes pour déconstructer un nom de type. (Cette interface prend en charge l’infrastructure .NET Framework et n’est pas destinée à être utilisée directement à partir de votre code.)

« IValidator » Fournit des méthodes pour valider les images exécutables portables (PE) et signaler des erreurs de validation.

Interfaces d’hébergement CLR dépréciées et coclasses Contient des rubriques qui décrivent les interfaces d’hébergement fournies dans .NET Framework version 1.0 et 1.1.

Interfaces d’hébergement CLR ajoutées dans .NET Framework 4 et 4.5 Contient des rubriques qui décrivent les interfaces d’hébergement fournies dans .NET Framework 4.