Teilen über


SafeBuffer Klasse

Definition

Achtung

SafeBuffer may be unavailable in future releases.

Stellt einen gesteuerten Arbeitsspeicherpuffer bereit, der zum Lesen und Schreiben verwendet werden kann. Arbeitsspeicherzugriffe außerhalb des gesteuerten Puffers (Unterläufe und Überläufe) führen jeweils zu einer Ausnahme.

public ref class SafeBuffer abstract : System::Runtime::InteropServices::SafeHandle
public ref class SafeBuffer abstract : Microsoft::Win32::SafeHandles::SafeHandleZeroOrMinusOneIsInvalid
[System.Security.SecurityCritical]
public abstract class SafeBuffer : System.Runtime.InteropServices.SafeHandle
public abstract class SafeBuffer : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
[System.Security.SecurityCritical]
public abstract class SafeBuffer : Microsoft.Win32.SafeHandles.SafeHandleZeroOrMinusOneIsInvalid
[System.Security.SecurityCritical]
[System.Obsolete("SafeBuffer may be unavailable in future releases.")]
public abstract class SafeBuffer : System.Runtime.InteropServices.SafeHandle
[<System.Security.SecurityCritical>]
type SafeBuffer = class
    inherit SafeHandle
type SafeBuffer = class
    inherit SafeHandleZeroOrMinusOneIsInvalid
[<System.Security.SecurityCritical>]
type SafeBuffer = class
    inherit SafeHandleZeroOrMinusOneIsInvalid
[<System.Security.SecurityCritical>]
[<System.Obsolete("SafeBuffer may be unavailable in future releases.")>]
type SafeBuffer = class
    inherit SafeHandle
Public MustInherit Class SafeBuffer
Inherits SafeHandle
Public MustInherit Class SafeBuffer
Inherits SafeHandleZeroOrMinusOneIsInvalid
Vererbung
SafeBuffer
Vererbung
Vererbung
Abgeleitet
Attribute

Hinweise

Sie müssen die SafeBuffer.Initialize -Methode aufrufen, bevor Sie eine Instanz von SafeBufferverwenden. Um Rassen zu vermeiden, wenn Sie eine Instanz eines SafeBuffer Objekts in einer statischen Variablen speichern, sollten Sie einen der folgenden Ansätze verwenden:

Hinweis

Zuweisungen in einem statischen Klassenkonstruktor sind implizit gesperrt.

Konstruktoren

SafeBuffer(Boolean)
Veraltet.

Erstellt eine neue Instanz der SafeBuffer-Klasse und gibt an, ob das Pufferhandle zuverlässig freigegeben werden soll.

Felder

handle
Veraltet.

Gibt das zu umschließende Handle an.

(Geerbt von SafeHandle)

Eigenschaften

ByteLength
Veraltet.

Ruft die Größe des Puffers in Bytes ab.

IsClosed
Veraltet.

Ruft einen Wert ab, der angibt, ob das Handle geschlossen ist.

(Geerbt von SafeHandle)
IsInvalid
Veraltet.

Ruft einen Wert ab, der angibt, ob das Handle ungültig ist.

IsInvalid
Veraltet.

Ruft einen Wert ab, der angibt, ob das Handle ungültig ist.

(Geerbt von SafeHandleZeroOrMinusOneIsInvalid)

Methoden

AcquirePointer(Byte*)
Veraltet.

Ruft einen Zeiger aus einem SafeBuffer-Objekt für einen Speicherblock ab.

Close()
Veraltet.

Markiert das Handle für das Freigeben und Verfügbarmachen von Ressourcen.

(Geerbt von SafeHandle)
DangerousAddRef(Boolean)
Veraltet.

Inkrementiert manuell den Verweiszähler für SafeHandle-Instanzen.

(Geerbt von SafeHandle)
DangerousGetHandle()
Veraltet.

Gibt den Wert des handle-Felds zurück.

(Geerbt von SafeHandle)
DangerousRelease()
Veraltet.

Dekrementiert manuell den Verweiszähler für eine SafeHandle-Instanz.

(Geerbt von SafeHandle)
Dispose()
Veraltet.

Gibt alle von der SafeHandle-Klasse verwendeten Ressourcen frei.

(Geerbt von SafeHandle)
Dispose(Boolean)
Veraltet.

Gibt die von der SafeHandle-Klasse verwendeten, nicht verwalteten Ressourcen frei und gibt an, ob ein normaler Freigabevorgang ausgeführt werden soll.

(Geerbt von SafeHandle)
Equals(Object)
Veraltet.

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()
Veraltet.

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()
Veraltet.

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
Initialize(UInt32, UInt32)
Veraltet.

Gibt die Zuordnungsgröße des Arbeitsspeicherpuffers mit der angegebenen Anzahl von Elementen und der Elementgröße an. Diese Methode muss aufgerufen werden, bevor die SafeBuffer-Instanz verwendet wird.

Initialize(UInt64)
Veraltet.

Definiert die Zuordnungsgröße des Arbeitsspeicherbereichs in Bytes. Diese Methode muss aufgerufen werden, bevor die SafeBuffer-Instanz verwendet wird.

Initialize<T>(UInt32)
Veraltet.

Definiert die Zuordnungsgröße des Arbeitsspeicherbereichs, indem die Anzahl der Werttypen angegeben wird. Diese Methode muss aufgerufen werden, bevor die SafeBuffer-Instanz verwendet wird.

MemberwiseClone()
Veraltet.

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
Read<T>(UInt64)
Veraltet.

Liest einen Werttyp am angegebenen Offset aus dem Arbeitsspeicher.

ReadArray<T>(UInt64, T[], Int32, Int32)
Veraltet.

Liest beginnend am Offset die angegebene Anzahl von Werttypen aus dem Arbeitsspeicher und schreibt sie beginnend am Index in ein Array.

ReadSpan<T>(UInt64, Span<T>)
Veraltet.

Liest Werttypen aus dem Arbeitsspeicher ab dem Offset und schreibt sie in eine Spanne. Die Anzahl der Werttypen, die gelesen werden, wird durch die Länge der Spanne bestimmt.

ReleaseHandle()
Veraltet.

Führt beim Überschreiben in einer abgeleiteten Klasse den Code aus, der für das Freigeben des Handles erforderlich ist.

(Geerbt von SafeHandle)
ReleasePointer()
Veraltet.

Gibt einen Zeiger frei, der von der AcquirePointer(Byte*)-Methode abgerufen wurde.

SetHandle(IntPtr)
Veraltet.

Legt das Handle für das angegebene, bereits vorhandene Handle fest.

(Geerbt von SafeHandle)
SetHandleAsInvalid()
Veraltet.

Markiert ein Handle als nicht mehr verwendet.

(Geerbt von SafeHandle)
ToString()
Veraltet.

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
Write<T>(UInt64, T)
Veraltet.

Schreibt einen Werttyp an der angegebenen Position in den Arbeitsspeicher.

WriteArray<T>(UInt64, T[], Int32, Int32)
Veraltet.

Schreibt die angegebene Anzahl von Werttypen an eine Speicheradresse, indem beginnend an der angegebenen Position im Eingabearray Bytes gelesen werden.

WriteSpan<T>(UInt64, ReadOnlySpan<T>)
Veraltet.

Schreibt die Werttypen aus einer schreibgeschützten Spanne in einen Speicherspeicherort.

Gilt für: