MemoryCache.CacheMemoryLimit Propiedad

Definición

Obtiene la cantidad de memoria del equipo, en bytes, que la memoria caché puede utilizar.

public:
 property long CacheMemoryLimit { long get(); };
public long CacheMemoryLimit { get; }
member this.CacheMemoryLimit : int64
Public ReadOnly Property CacheMemoryLimit As Long

Valor de propiedad

Int64

Cantidad de memoria en bytes.

Comentarios

Si la instancia actual de la memoria caché supera el límite de memoria establecido por la CacheMemoryLimit propiedad , la implementación de la caché quita las entradas de caché. Cada instancia de caché de la aplicación puede usar la cantidad de memoria especificada por la CacheMemoryLimit propiedad .

La configuración de la CacheMemoryLimit propiedad se puede especificar en el archivo de configuración de la aplicación. Como alternativa, se pueden pasar en el constructor cuando se inicializa la MemoryCache clase . Para obtener más información sobre cómo configurar esta propiedad, vea <elemento namedCaches> (cache Configuración). Para obtener más información sobre cómo establecer este valor cuando se inicializa la MemoryCache clase, vea el MemoryCache método .

MemoryCache no aplica CacheMemoryLimit al instante cada vez que se agrega un nuevo elemento a una MemoryCache instancia de . La heurística interna de la que expulsa elementos adicionales de MemoryCache lo hace gradualmente y tiene en cuenta la información del recolector de elementos no utilizados (consulte Recolección de elementos no utilizados) y otros factores, como el tamaño de caché actual y la presión general de memoria del sistema. Por lo tanto, aunque MemoryCache intenta mantener el tamaño de la memoria caché dentro del configurado CacheMemoryLimit , es posible superar temporalmente el límite agregando elementos de caché a una velocidad muy alta.

Se aplica a

Consulte también