MemoryCache.CacheMemoryLimit Eigenschaft

Definition

Ruft den Speicherplatz auf dem Computer, der vom Cache verwendet werden kann, in Bytes ab.Gets the amount of memory on the computer, in bytes, that can be used by the cache.

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

Eigenschaftswert

Der Speicherplatz in Bytes.The amount of memory in bytes.

Hinweise

Wenn die aktuelle Instanz des Caches den von der CacheMemoryLimit-Eigenschaft festgelegten Grenzwert für den Arbeitsspeicher überschreitet, entfernt die Cache Implementierung Cache Einträge.If the current instance of the cache exceeds the limit on memory set by the CacheMemoryLimit property, the cache implementation removes cache entries. Jede Cache Instanz in der Anwendung kann die Menge an Arbeitsspeicher verwenden, die in der CacheMemoryLimit-Eigenschaft angegeben ist.Each cache instance in the application can use the amount of memory that is specified by the CacheMemoryLimit property.

Die Einstellungen für die CacheMemoryLimit-Eigenschaft können in der Anwendungs Konfigurationsdatei angegeben werden.The settings for the CacheMemoryLimit property can be specified in the application configuration file. Alternativ können Sie im Konstruktor übergeben werden, wenn die MemoryCache-Klasse initialisiert wird.Alternatively, they can be passed in the constructor when the MemoryCache class is initialized. Weitere Informationen zum Konfigurieren dieser Eigenschaft finden Sie unter <NamedCaches>-Element (Cache Einstellungen).For more information about how to configure this property, see <namedCaches> Element (Cache Settings). Weitere Informationen zum Festlegen dieses Werts, wenn die MemoryCache Klasse initialisiert wird, finden Sie unter der MemoryCache-Methode.For more information about how to set this value when the MemoryCache class is being initialized, see the MemoryCache method.

MemoryCache erzwingen CacheMemoryLimit nicht sofort, wenn einer MemoryCache-Instanz ein neues Element hinzugefügt wird.MemoryCache does not instantly enforce CacheMemoryLimit each time a new item is added to a MemoryCache instance. Die interne Heuristik, die zusätzliche Elemente aus der MemoryCache entfernt, führt Sie schrittweise aus und berücksichtigt Informationen aus dem Garbage Collector (siehe Garbage Collection) und anderen Faktoren wie der aktuellen Cache Größe und der Gesamtauslastung des System Arbeitsspeichers.The internal heuristics which evicts extra items from the MemoryCache does it gradually and takes into account information from the garbage collector (see Garbage Collection) and other factors such as current cache size and overall system memory pressure. Obwohl der MemoryCache versucht, die Cache Größe innerhalb der konfigurierten CacheMemoryLimit beizubehalten, ist es möglich, die Grenze vorübergehend zu überschreiten, indem Sie Cache Elemente zu einem sehr hohen Preis hinzufügen.Therefore even though the MemoryCache tries to keep the cache size within the configured CacheMemoryLimit it is possible to temporarily exceed the limit by adding cache items at a very high rate.

Gilt für:

Siehe auch