适用于 .NET Framework 2.0 的宿主接口
本节描述非托管宿主可用于将 .NET Framework 2.0 版中的公共语言运行库 (CLR) 集成到其应用程序中的接口。与 1.0 和 1.1 版本相比,2.0 版本的接口允许宿主对运行库的更多方面进行控制,从而使 CLR 和宿主的执行模型之间能够进行更紧密地集成。
在 .NET Framework 版本 1 中,宿主模型允许非托管宿主将 CLR 加载到进程中,以配置某些设置和接收事件通知。但在通常情况下,宿主和 CLR 可以在该进程中独立运行。.NET Framework 2.0 版提供了新的抽象层,并扩展了宿主可以配置的功能集。通过新的抽象层,宿主可以提供当前由 Win32 程序集中的类型提供的多种资源。
本节内容
- IActionOnCLREvent
提供 OnEvent 方法,该方法用于对已使用 ICLROnEventManager::RegisterActionOnEvent 调用注册的事件执行回调。
- ICLRAssemblyIdentityManager
提供支持宿主和 CLR 之间就程序集问题进行通信的方法。
- ICLRAssemblyReferenceList
管理由 CLR(而非宿主)加载的程序集的列表。
- ICLRControl
提供一些方法,以便宿主可以获取对 CLR 的访问权限并对 CLR 的各个方面进行配置。
- ICLRDebugManager
提供允许宿主将一组任务与某个标识符及友好名称关联起来的方法。
- ICLRErrorReportingManager
提供允许宿主为错误报告配置自定义堆转储的方法。
- ICLRGCManager
提供允许宿主与 CLR 的垃圾回收系统进行交互的方法。
- ICLRHostBindingPolicyManager
提供允许宿主计算并传达程序集策略信息中的更改的方法。
- ICLRHostProtectionManager
为宿主提供用于阻止提供指定功能的托管类、方法、属性和字段在部分受信任的代码中运行的方法。
- ICLRIoCompletionManager
实现允许宿主通知 CLR 指定 I/O 请求的状态的回调方法。
- ICLRMemoryNotificationCallback
允许宿主使用与 Win32 CreateMemoryResourceNotification 函数类似的方法报告内存压力条件。
- ICLROnEventManager
提供允许宿主为 CLR 事件注册和注销回调的方法。
- ICLRPolicyManager
提供允许宿主指定出现错误和超时的情况下采取的策略操作的方法。
- ICLRProbingAssemblyEnum
提供一些方法,以使宿主可以通过 CLR 内部的程序集标识信息来获取该程序集的探测标识,而无需创建或了解该标识。
- ICLRReferenceAssemblyEnum
提供一些方法,以使宿主可以对文件或流通过 CLR 内部的程序集标识数据引用的一组程序集进行操作,而无需创建或了解这些标识。
- ICLRRuntimeHost
提供类似于 ICorRuntimeHost 的功能,以及一个用来设置宿主控件接口的附加方法。
- ICLRSyncManager
提供一些方法,以便宿主可以获取有关请求的任务的信息并检测由 CLR 创建的同步对象中的死锁条件。
- ICLRTask
提供一些方法,以使宿主可以发出 CLR 请求,或者向 CLR 提供与关联的任务有关的通知。
- ICLRTaskManager
提供一些方法,以使宿主可以显式请求 CLR 创建一个新任务,获取当前正在执行的任务,以及设置该任务的地理语言和区域性。
- ICLRValidator
提供用于验证可移植可执行 (PE) 映像和报告验证错误的方法。
- IHostAssemblyManager
提供一些方法,以使宿主可以指定应由 CLR 或宿主加载的多组程序集。
- IHostAssemblyStore
提供一些方法,以使宿主可以独立于 CLR 绑定到程序集和模块。
- IHostAutoEvent
提供由宿主实现的自动重置事件的表示形式。
- IHostControl
提供一些方法,以配置程序集的加载和确定宿主支持的宿主接口。
- IHostCrst
用作线程临界区的宿主表示形式。
- IHostGCManager
提供一些方法,以通知宿主垃圾回收机制中由 CLR 实现的事件。
- IHostIoCompletionManager
提供一些方法,以使 CLR 可以与宿主提供的 I/O 完成端口进行交互。
- IHostMAlloc
提供一些方法,以便 CLR 可以请求从堆到宿主的细化分配。
- IHostManualEvent
提供宿主的手动重置事件的表示形式的实现。
- IHostMemoryManager
提供一些方法,以便 CLR 可以通过宿主而不是调用标准 Win32 虚拟内存函数来请求内存分配。
- IHostPolicyManager
提供一些方法,以便通知宿主 CLR 在中止、超时或失败时所执行的操作。
- IHostSecurityContext
允许 CLR 维护由宿主实现的安全上下文信息。
- IHostSecurityManager
提供允许访问和控制当前正在执行的线程的安全上下文的方法。
- IHostSemaphore
提供由宿主实现的信号量的表示形式。
- IHostSyncManager
提供一些方法,以便 CLR 可以通过宿主而不是调用 Win32 同步函数来创建同步基元。
- IHostTask
提供允许 CLR 与宿主通信以管理任务的方法。
- IHostTaskManager
提供一些方法,以使 CLR 可以通过宿主而不是使用标准操作系统线程或纤程函数来处理任务。
- IHostThreadPoolManager
提供一些方法,以便 CLR 可以配置线程池并对线程池中的工作项进行排队。
- IApartmentCallback
提供用于进行单元回调的方法。
- IAppDomainBinding
提供用于设置运行库配置的方法。
- ICatalogServices
提供用于编录的方法。
- ICorConfiguration
提供用于配置公共语言运行库 (CLR) 的方法
- ICorThreadpool
提供用于访问线程池的方法。
- IDebuggerInfo
提供用于获取有关调试器的信息的方法。
- IDebuggerThreadControl
提供在调试服务执行时用于控制线程的方法。
- IGCHost
提供用于获取有关垃圾回收系统的信息以及控制垃圾回收的某些方面的方法。
- IGCHostControl
提供垃圾回收器用于请求更改的方法。
- IGCThreadControl
提供用于参与线程调度的方法,以防止因阻塞而执行垃圾回收。
- IManagedObject
提供用于控制托管对象的方法。
- IObjectHandle
提供用于通过间接寻址打开按值封送对象的方法。
- ITypeName
提供用于获取类型名称信息的方法。
- ITypeNameBuilder
提供用于生成类型名称的方法。
- ITypeNameFactory
提供用于解构类型名称的方法。
- IValidator
提供用于参与 Web 窗体验证的方法。
相关章节
- 适用于 .NET Framework 1.0 和 1.1 的宿主接口
包含描述 .NET Framework 早期版本中提供的宿主接口的主题。