定义一个元素,该元素用于配置基于 MemoryCache 类的缓存。 MemoryCacheElement 类定义 memoryCache 元素,您可以用该元素配置缓存。 可以在一个应用程序中使用 MemoryCache 类的多个实例。 配置文件中的每个 memoryCache 元素可能包含命名 MemoryCache 实例的设置。
<memoryCache
<namedCaches>
<!-- child elements -->
</namedCaches>
< memoryCache />
MemoryCache 类。
特性和元素
以下几节描述了属性、子元素和父元素。
特性
特性 |
说明 |
---|---|
CacheMemoryLimitMegabytes |
MemoryCache 对象的实例可增长到的最大内存大小(以兆字节为单位)。 默认值是 0,表示默认使用 MemoryCache 类的自动调整大小试探法。 |
Name |
某个缓存配置的名称。 |
PhysicalMemoryLimitPercentage |
缓存可使用的物理内存的百分比。 默认值是 0,表示默认使用 MemoryCache 类的自动调整大小试探法。 |
PollingInterval |
一个值,该值指示缓存实现将当前内存负载与为缓存实例设置的绝对内存和内存百分比限制进行比较所采用的时间间隔。 该值以“HH:MM:SS”格式输入。 |
子元素
元素 |
说明 |
---|---|
包含 namedCache 实例的配置设置的集合。 |
父元素
元素 |
说明 |
---|---|
包含在 .NET Framework 中构建的应用程序中实现输出缓存的类型。 |
备注
MemoryCache 类是抽象 ObjectCache 类的具体实现。 可以通过应用程序配置文件对 MemoryCache 类的实例提供配置信息。 memoryCache 配置节包含 namedCaches 配置集合。
在初始化基于内存的缓存对象时,它会首先尝试寻找与传递到内存缓存构造函数的参数中的名称匹配的 namedCaches 项。 如果找到 namedCaches 项,则将从配置文件检索轮询和内存管理信息。
然后,初始化进程通过使用构造函数中的配置信息的名称/值对的可选集合,确定是否有配置项被重写。 如果您将以下任一值传入名称/值对集合,则这些值将重写从配置文件获取的信息:
示例
下面的示例演示如何通过将 name 特性设置为“默认”将 MemoryCache 对象的名称设置为默认缓存对象名称。
cacheMemoryLimitMegabytes 特性和 physicalMemoryPercentage 特性被设置为零。 将这些特性设置为零意味着默认情况下使用 MemoryCache 自动调整大小试探法。 每隔两分钟,缓存实现应将当前内存负载与基于百分比的绝对内存限制进行比较。
<configuration>
<system.runtime.caching>
<memoryCache>
<namedCaches>
<add name="default"
cacheMemoryLimitMegabytes="0"
physicalMemoryPercentage="0"
pollingInterval="00:02:00" />
</namedCaches>
</memoryCache>
</system.runtime.caching>
</configuration>