<Элемент memoryCache> (параметры кэша)

Определяет элемент, используемый для настройки кэша, который основан на классе MemoryCache . Класс MemoryCacheElement определяет элемент memoryCache , который можно использовать для настройки кэша. В одном приложении может использоваться несколько экземпляров класса MemoryCache . Каждый элемент memoryCache в файле конфигурации может содержать параметры для именованного экземпляра MemoryCache .

<Конфигурации>
  <system.runtime.caching>
    <Memorycache>

Синтаксис

<memoryCache>
    <namedCaches>  
        <!-- child elements -->  
    </namedCaches>
</memoryCache>  

Тип

КлассMemoryCache .

Атрибуты и элементы

В следующих разделах описаны атрибуты, дочерние и родительские элементы.

Атрибуты

Атрибут Описание
CacheMemoryLimitMegabytes Максимальный объем памяти в мегабайтах, который может занимать экземпляр объекта MemoryCache . Значение по умолчанию — 0. Это означает, что эвристика автомасштабирования класса MemoryCache используется по умолчанию.
Name Имя конфигурации кэша.
PhysicalMemoryLimitPercentage Процент физической памяти, который может использоваться кэшем. Значение по умолчанию — 0. Это означает, что эвристика автомасштабирования класса MemoryCache используется по умолчанию.
PollingInterval Значение, указывающее интервал, по истечении которого реализация кэша сравнивает текущую загрузку памяти с абсолютными и процентными ограничениями по памяти, заданными для данного экземпляра кэша. Значение вводится в формате "ЧЧ:ММ:СС".

Дочерние элементы

Элемент Описание
<NamedCaches> Содержит коллекцию параметров конфигурации для экземпляра namedCache .

Родительские элементы

Элемент Описание
<configuration> Указывает корневой элемент в каждом файле конфигурации, который используется средой CLR и платформа .NET Framework приложениями.
<system.runtime.caching> Содержит типы, позволяющие реализовать кэширование выходных данных в приложениях, встроенных в платформа .NET Framework.

Комментарии

Класс MemoryCache — это конкретная реализация абстрактного класса ObjectCache . Экземпляры класса MemoryCache можно снабдить сведениями о конфигурации из файлов конфигурации приложения. Раздел конфигурации MemoryCache содержит коллекцию конфигураций namedCaches .

При инициализации объекта кэша на базе памяти он сначала пытается найти запись namedCaches , которая соответствует имени в параметре, передаваемом конструктору кэша памяти. Если запись namedCaches найдена, из файла конфигурации извлекаются сведения об опросах и управлении памятью.

После этого процесс инициализации определяет, были ли переопределены какие-либо записи конфигурации, с помощью дополнительной коллекцию пар имя-значение для сведений о конфигурации в конструкторе. Если передать в коллекцию пар имя-значение любое из следующих значений, оно переопределит сведения, полученные из файла конфигурации:

Пример

В следующем примере показано, как задать имя объекта кэша MemoryCache по умолчанию, установив для атрибута name значение "Default".

Атрибутам cacheMemoryLimitMegabytes и physicalMemoryLimitPercentage присваивается нулевое значение. Это означает, что эвристика автомасштабирования MemoryCache используется по умолчанию. Реализация кэша должна каждые две минуты сравнивать текущую загрузку памяти с абсолютными и процентными ограничениями по памяти.

<configuration>  
  <system.runtime.caching>  
    <memoryCache>  
      <namedCaches>  
          <add name="Default"
               cacheMemoryLimitMegabytes="0"
               physicalMemoryLimitPercentage="0"  
               pollingInterval="00:02:00" />  
      </namedCaches>  
    </memoryCache>  
  </system.runtime.caching>  
</configuration>  

См. также раздел