Ler em inglês

Partilhar via


MemoryCache.CacheMemoryLimit Propriedade

Definição

Obtém a quantidade de memória no computador, em bytes, que pode ser usada pelo cache.

C#
public long CacheMemoryLimit { get; }

Valor da propriedade

A quantidade de memória em bytes.

Comentários

Se a instância atual do cache exceder o limite de memória definido pela CacheMemoryLimit propriedade , a implementação do cache removerá as entradas de cache. Cada instância de cache no aplicativo pode usar a quantidade de memória especificada pela CacheMemoryLimit propriedade .

As configurações da CacheMemoryLimit propriedade podem ser especificadas no arquivo de configuração do aplicativo. Como alternativa, eles podem ser passados no construtor quando a MemoryCache classe é inicializada. Para obter mais informações sobre como configurar essa propriedade, consulte <Elemento namedCaches> (Configurações de Cache). Para obter mais informações sobre como definir esse valor quando a MemoryCache classe está sendo inicializada, consulte o MemoryCache método .

MemoryCache não impõe CacheMemoryLimit instantaneamente cada vez que um novo item é adicionado a uma MemoryCache instância. A heurística interna que remove itens extras do faz isso gradualmente e leva em conta as informações do coletor de lixo (consulte Coleta de Lixo) e outros fatores, como o tamanho atual do MemoryCache cache e a pressão geral da memória do sistema. Portanto, embora o MemoryCache tente manter o tamanho do cache dentro do configurado CacheMemoryLimit , é possível exceder temporariamente o limite adicionando itens de cache a uma taxa muito alta.

Aplica-se a

Produto Versões
.NET 8 (package-provided), 9 (package-provided), 10 (package-provided)
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0 (package-provided)

Confira também