System.THeapStatus

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

THeapStatus = record

C++

struct DECLSPEC_DRECORD THeapStatus _DEPRECATED_ATTRIBUTE0
{
public:
    NativeUInt TotalAddrSpace;
    NativeUInt TotalUncommitted;
    NativeUInt TotalCommitted;
    NativeUInt TotalAllocated;
    NativeUInt TotalFree;
    NativeUInt FreeSmall;
    NativeUInt FreeBig;
    NativeUInt Unused;
    NativeUInt Overhead;
    unsigned HeapErrorCode;
};

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
record
struct
public
System.pas
System.hpp
System System

Beschreibung

Warnung: THeapStatus ist veraltet.

THeapStatus repräsentiert Informationen über den globalen Heap.

THeapStatus repräsentiert Informationen über den aktuellen Speichermanager. Die Werte in den Feldern haben folgende Bedeutung:



Feld Bedeutung

TotalAddrSpace

Der (aktuelle) gesamte Adressraum in Byte, der für Ihr Programm zur Verfügung steht. Wird mit Zunahme der dynamischen Speicherverwendung Ihres Programms größer.

TotalUncommitted

Die Gesamtanzahl der Bytes (von TotalAddrSpace), für die kein Platz in der Swap-Datei zugewiesen wurde.

TotalCommitted

Die Gesamtanzahl der Bytes (von TotalAddrSpace), für die Platz in der Swap-Datei zugewiesen wurde. Hinweis: TotalUncommitted + TotalCommitted = TotalAddrSpace

TotalAllocated

Die Gesamtanzahl der Bytes, die für Ihr Programm dynamisch zugewiesen wurde.

TotalFree

Die Gesamtanzahl der freien Bytes, die im (aktuellen) Adressraum für die Zuweisung durch Ihr Programm verfügbar ist. Wenn diese Zahl überschritten wird und ausreichend virtueller Speicher zur Verfügung steht, wird vom Betriebssystem weiterer Adressraum zugewiesen; TotalAddrSpace wird entsprechend erhöht.

FreeSmall

Gesamt-Bytes der kleinen Speicherblöcke, die aktuell nicht durch Ihr Programm zugewiesen sind.

FreeBig

Gesamt-Bytes der großen Speicherblöcke, die aktuell nicht durch Ihr Programm zugewiesen sind. Große freie Blöcke können durch Zusammenfügen von kleineren, aufeinanderfolgenden, freien Blöcken oder durch die Freigabe einer großen dynamischen Zuweisung erstellt werden. (Die genaue Größe der Blöcke ist unerheblich).

Unused

Gesamt-Bytes, die nie von Ihrem Programm zugewiesen wurden. Hinweis: Unused + FreeBig + FreeSmall = TotalFree. Diese drei Felder (Unused, FreeBig und FreeSmall) beziehen sich auf die dynamische Zuweisung durch das Benutzerprogramm.

Overhead

Die Gesamtanzahl der Bytes, die vom Heap-Manager für die Verwaltung der Blöcke benötigt werden, die von Ihrem Programm dynamisch zugewiesen wurden.

HeapErrorCode

Gibt den aktuellen Status des Heap an, so wie er intern festgestellt wurde.



Anmerkung:  TotalAddrSpace, TotalUncommitted und TotalCommitted beziehen sich auf den Betriebssystemspeicher, der von Programm verwendet wird. TotalAllocated und TotalFree dagegen beziehen sich auf den Heap-Speicher, der im Programm von dynamischen Zuweisungen verwendet wird. Überwachen Sie deshalb die dynamische Speicherverwendung in Ihrem Programm mit TotalAllocated und TotalFree.