Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch

GC.RemoveMemoryPressure-Methode: (Int64)

 

Veröffentlicht: Oktober 2016

Informiert die Laufzeit, dass nicht verwalteter Arbeitsspeicher freigegeben wurde und beim Planen der Garbage Collection nicht mehr berücksichtigt werden muss.

Namespace:   System
Assembly:  mscorlib (in mscorlib.dll)

[SecurityCriticalAttribute]
public static void RemoveMemoryPressure(
	long bytesAllocated
)

Parameter

bytesAllocated
Type: System.Int64

Die Menge an nicht verwaltetem Arbeitsspeicher, die freigegeben wurde.

Exception Condition
ArgumentOutOfRangeException

bytesAllocated ist kleiner oder gleich 0.

- oder -

Auf einem 32-Bit-Computer bytesAllocated ist größer als Int32.MaxValue.

Beim Planen der Garbagecollection berücksichtigt die Common Language Runtime, wie viel verwalteter Arbeitsspeicher zugeordnet ist. Wenn ein kleines verwaltetes Objekt eine große Menge an nicht verwalteten Arbeitsspeicher belegt, kann die Laufzeit berücksichtigt nur den verwalteten Speicher und unterschätzt somit die Dringlichkeit der Planen der Garbagecollection. Die AddMemoryPressure Methode informiert die Laufzeit über diesen zusätzlichen Druck auf dem Systemspeicher, und die RemoveMemoryPressure Methode informiert die Laufzeit, dass die zusätzliche Druck freigegeben wurde.

Im einfachsten Verwendungsmuster ein verwaltetes Objekt im Konstruktor nicht verwalteten Speicher belegt und freigegeben, in der Dispose oder Finalize Methode. Rufen Sie die AddMemoryPressure Methode nach dem nicht verwalteten Speicher zuordnen, und rufen Sie die RemoveMemoryPressure Methode nach der Freigabe.

In kompliziertere Szenarien, in dem die nicht verwaltete speicherbelegung ändert sich im Wesentlichen während der Lebensdauer des verwalteten Objekts, rufen Sie die AddMemoryPressure und RemoveMemoryPressure Methoden, um diese inkrementellen Änderungen an die Laufzeit zu kommunizieren.

System_CAPS_cautionAchtung

Sie müssen sicherstellen, dass Sie genau die Menge des Drucks entfernen, die Sie hinzufügen. Unterlassen kann die Leistung des Systems in Anwendungen, die für längere Zeiträume ausgeführt, negativ beeinflussen.

SecurityPermission

for the ability to call unmanaged code when manipulating garbage-collection priority. Associated enumeration: F:System.Security.Permissions.SecurityPermissionFlag.UnmanagedCode

SecurityCriticalAttribute

requires full trust for the immediate caller. This member cannot be used by partially trusted or transparent code.

Universelle Windows-Plattform
Verfügbar seit 8
.NET Framework
Verfügbar seit 2.0
Portierbare Klassenbibliothek
Unterstützt in: portierbare .NET-Plattformen
Windows Phone Silverlight
Verfügbar seit 8.0
Windows Phone
Verfügbar seit 8.1
Zurück zum Anfang
Anzeigen: