Freigeben über


MemoryMappedViewStream Klasse

Definition

Stellt eine Ansicht einer speicherzuordnungen Datei als sequenziell aufgerufenen Datenstrom dar.

public ref class MemoryMappedViewStream sealed : System::IO::UnmanagedMemoryStream
public sealed class MemoryMappedViewStream : System.IO.UnmanagedMemoryStream
type MemoryMappedViewStream = class
    inherit UnmanagedMemoryStream
Public NotInheritable Class MemoryMappedViewStream
Inherits UnmanagedMemoryStream
Vererbung
MemoryMappedViewStream
Vererbung

Beispiele

Im folgenden Beispiel wird eine MemoryMappedViewStream einer speicherzuordnungen Datei abgerufen und ein Wert für die Kommunikation zwischen Prozessen in den Datenstrom geschrieben.

Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die MemoryMappedFile.CreateNew-Methode bereitgestellt wird.

using (MemoryMappedViewStream stream = mmf.CreateViewStream())
{
    BinaryWriter writer = new BinaryWriter(stream);
    writer.Write(1);
}
Using Stream As MemoryMappedViewStream = mmf.CreateViewStream()
    Dim writer As BinaryWriter = New BinaryWriter(Stream)
    writer.Write(1)
End Using

Hinweise

Verwenden Sie die CreateViewStream Methode eines MemoryMappedFile Objekts, um diesen Datenstrom abzurufen.

Eigenschaften

CanRead

Ruft einen Wert ab, der angibt, ob ein Datenstrom das Lesen unterstützt.

(Geerbt von UnmanagedMemoryStream)
CanSeek

Ruft einen Wert ab, der angibt, ob ein Datenstrom die Suche unterstützt.

(Geerbt von UnmanagedMemoryStream)
CanTimeout

Ruft einen Wert ab, der bestimmt, ob der aktuelle Datenstrom Timeout ausführen kann.

(Geerbt von Stream)
CanWrite

Ruft einen Wert ab, der angibt, ob ein Datenstrom das Schreiben unterstützt.

(Geerbt von UnmanagedMemoryStream)
Capacity

Ruft die Datenstromlänge (Größe) oder die Gesamtmenge des Arbeitsspeichers ab, der einem Datenstrom (Kapazität) zugewiesen ist.

(Geerbt von UnmanagedMemoryStream)
Length

Ruft die Länge der Daten in einem Datenstrom ab.

(Geerbt von UnmanagedMemoryStream)
PointerOffset

Ruft die Anzahl der Bytes ab, um die die Startposition dieser Ansicht vom Anfang der speicherzuordnungen Datei versetzt wird.

Position

Ruft die aktuelle Position in einem Datenstrom ab oder legt sie fest.

(Geerbt von UnmanagedMemoryStream)
PositionPointer

Dient zum Abrufen oder Festlegen eines Bytezeigers auf einen Datenstrom basierend auf der aktuellen Position im Datenstrom.

(Geerbt von UnmanagedMemoryStream)
ReadTimeout

Dient zum Abrufen oder Festlegen eines Werts in Millisekunden, der bestimmt, wie lange der Datenstrom vor dem Timeout zu lesen versucht.

(Geerbt von Stream)
SafeMemoryMappedViewHandle

Ruft ein Handle zur Ansicht einer speicherzuordnungen Datei ab.

WriteTimeout

Dient zum Abrufen oder Festlegen eines Werts in Millisekunden, der bestimmt, wie lange der Datenstrom versucht, vor dem Timeout zu schreiben.

(Geerbt von Stream)

Methoden

BeginRead(Byte[], Int32, Int32, AsyncCallback, Object)

Startet einen asynchronen Lesevorgang. (Verwenden Sie stattdessen ReadAsync(Byte[], Int32, Int32).)

(Geerbt von Stream)
BeginWrite(Byte[], Int32, Int32, AsyncCallback, Object)

Startet einen asynchronen Schreibvorgang. (Verwenden Sie stattdessen WriteAsync(Byte[], Int32, Int32).)

(Geerbt von Stream)
Close()

Schließt den aktuellen Datenstrom und gibt alle Ressourcen (z. B. Sockets und Dateihandles) frei, die dem aktuellen Datenstrom zugeordnet sind. Anstatt diese Methode aufzurufen, stellen Sie sicher, dass der Datenstrom ordnungsgemäß verworfen ist.

(Geerbt von Stream)
CopyTo(Stream)

Liest die Bytes aus dem aktuellen Datenstrom und schreibt sie in einen anderen Datenstrom. Beide Datenströme werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CopyTo(Stream, Int32)

Liest die Bytes aus dem aktuellen Datenstrom und schreibt sie mithilfe einer angegebenen Puffergröße in einen anderen Datenstrom. Beide Datenströme werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CopyToAsync(Stream)

Liest die Bytes asynchron aus dem aktuellen Datenstrom und schreibt sie in einen anderen Datenstrom. Beide Datenströme werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CopyToAsync(Stream, CancellationToken)

Liest die Bytes asynchron aus dem aktuellen Datenstrom und schreibt sie mithilfe eines angegebenen Abbruchtokens in einen anderen Datenstrom. Beide Datenströme werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CopyToAsync(Stream, Int32)

Liest die Bytes asynchron aus dem aktuellen Datenstrom und schreibt sie mithilfe einer angegebenen Puffergröße in einen anderen Datenstrom. Beide Datenströme werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CopyToAsync(Stream, Int32, CancellationToken)

Liest asynchron die Bytes aus dem aktuellen Datenstrom und schreibt sie in einen anderen Datenstrom, wobei eine angegebene Puffergröße und ein Abbruchtoken verwendet wird. Beide Datenströme werden um die Anzahl der kopierten Bytes erweitert.

(Geerbt von Stream)
CreateObjRef(Type)

Erstellt ein Objekt, das alle relevanten Informationen enthält, die zum Generieren eines Proxys erforderlich sind, der für die Kommunikation mit einem Remoteobjekt verwendet wird.

(Geerbt von MarshalByRefObject)
CreateWaitHandle()
Veraltet.
Veraltet.
Veraltet.

Weist ein WaitHandle-Objekt zu.

(Geerbt von Stream)
Dispose()

Gibt alle vom Streamverwendeten Ressourcen frei.

(Geerbt von Stream)
Dispose(Boolean)

Gibt die nicht verwalteten Ressourcen frei, die vom UnmanagedMemoryStream verwendet werden, und gibt optional die verwalteten Ressourcen frei.

(Geerbt von UnmanagedMemoryStream)
DisposeAsync()

Gibt asynchron die nicht verwalteten Ressourcen frei, die vom Streamverwendet werden.

(Geerbt von Stream)
EndRead(IAsyncResult)

Wartet auf den Abschluss des ausstehenden asynchronen Lesevorgangs. (Verwenden Sie stattdessen ReadAsync(Byte[], Int32, Int32).)

(Geerbt von Stream)
EndWrite(IAsyncResult)

Beendet einen asynchronen Schreibvorgang. (Verwenden Sie stattdessen WriteAsync(Byte[], Int32, Int32).)

(Geerbt von Stream)
Equals(Object)

Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht.

(Geerbt von Object)
Flush()

Löscht alle Puffer für diesen Datenstrom und bewirkt, dass alle gepufferten Daten in die zugrunde liegende Datei geschrieben werden.

FlushAsync()

Löscht asynchron alle Puffer für diesen Datenstrom und bewirkt, dass alle gepufferten Daten auf das zugrunde liegende Gerät geschrieben werden.

(Geerbt von Stream)
FlushAsync(CancellationToken)

Überschreibt die FlushAsync(CancellationToken)-Methode, sodass der Vorgang abgebrochen wird, wenn angegeben, aber keine andere Aktion ausgeführt wird.

(Geerbt von UnmanagedMemoryStream)
GetHashCode()

Dient als Standardhashfunktion.

(Geerbt von Object)
GetLifetimeService()
Veraltet.

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinie für diese Instanz steuert.

(Geerbt von MarshalByRefObject)
GetType()

Ruft die Type der aktuellen Instanz ab.

(Geerbt von Object)
Initialize(Byte*, Int64, Int64, FileAccess)

Initialisiert eine neue Instanz der UnmanagedMemoryStream Klasse mithilfe eines Zeigers auf einen nicht verwalteten Speicherort.

(Geerbt von UnmanagedMemoryStream)
Initialize(SafeBuffer, Int64, Int64, FileAccess)

Initialisiert eine neue Instanz der UnmanagedMemoryStream-Klasse in einem sicheren Puffer mit einem angegebenen Offset, einer bestimmten Länge und einem Dateizugriff.

(Geerbt von UnmanagedMemoryStream)
InitializeLifetimeService()
Veraltet.

Ruft ein Lebensdauerdienstobjekt ab, um die Lebensdauerrichtlinie für diese Instanz zu steuern.

(Geerbt von MarshalByRefObject)
MemberwiseClone()

Erstellt eine flache Kopie der aktuellen Object.

(Geerbt von Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.

(Geerbt von MarshalByRefObject)
ObjectInvariant()
Veraltet.

Bietet Unterstützung für eine Contract.

(Geerbt von Stream)
Read(Byte[], Int32, Int32)

Liest die angegebene Anzahl von Bytes in das angegebene Array.

(Geerbt von UnmanagedMemoryStream)
Read(Span<Byte>)

Liest alle Bytes dieses nicht verwalteten Speicherdatenstroms in die angegebene Bytespanne.

(Geerbt von UnmanagedMemoryStream)
ReadAsync(Byte[], Int32, Int32)

Liest asynchron eine Abfolge von Bytes aus dem aktuellen Datenstrom und wechselt die Position innerhalb des Datenstroms um die Anzahl der gelesenen Bytes.

(Geerbt von Stream)
ReadAsync(Byte[], Int32, Int32, CancellationToken)

Liest asynchron die angegebene Anzahl von Bytes in das angegebene Array.

(Geerbt von UnmanagedMemoryStream)
ReadAsync(Memory<Byte>, CancellationToken)

Liest asynchron die nicht verwalteten Speicherdatenstrombytes in den Speicherbereich.

(Geerbt von UnmanagedMemoryStream)
ReadAtLeast(Span<Byte>, Int32, Boolean)

Liest mindestens eine Minimale Anzahl von Bytes aus dem aktuellen Datenstrom und wechselt die Position innerhalb des Datenstroms um die Anzahl der gelesenen Bytes.

(Geerbt von Stream)
ReadAtLeastAsync(Memory<Byte>, Int32, Boolean, CancellationToken)

Liest asynchron mindestens eine Mindestanzahl von Bytes aus dem aktuellen Datenstrom, wechselt die Position innerhalb des Datenstroms um die Anzahl der gelesenen Bytes und überwacht Abbruchanforderungen.

(Geerbt von Stream)
ReadByte()

Liest ein Byte aus einem Datenstrom und wechselt die Position innerhalb des Datenstroms um ein Byte oder gibt -1 zurück, wenn am Ende des Datenstroms.

(Geerbt von UnmanagedMemoryStream)
ReadExactly(Byte[], Int32, Int32)

Liest count Anzahl von Bytes aus dem aktuellen Datenstrom und wechselt die Position innerhalb des Datenstroms.

(Geerbt von Stream)
ReadExactly(Span<Byte>)

Liest Bytes aus dem aktuellen Datenstrom und wechselt die Position innerhalb des Datenstroms, bis die buffer gefüllt ist.

(Geerbt von Stream)
ReadExactlyAsync(Byte[], Int32, Int32, CancellationToken)

Liest asynchron count Anzahl von Bytes aus dem aktuellen Datenstrom, wechselt die Position innerhalb des Datenstroms und überwacht Abbruchanforderungen.

(Geerbt von Stream)
ReadExactlyAsync(Memory<Byte>, CancellationToken)

Liest asynchron Bytes aus dem aktuellen Datenstrom, wechselt die Position innerhalb des Datenstroms, bis die buffer gefüllt ist, und überwacht Abbruchanforderungen.

(Geerbt von Stream)
Seek(Int64, SeekOrigin)

Legt die aktuelle Position des aktuellen Datenstroms auf den angegebenen Wert fest.

(Geerbt von UnmanagedMemoryStream)
SetLength(Int64)

Legt die Länge des aktuellen Datenstroms fest.

ToString()

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

(Geerbt von Object)
Write(Byte[], Int32, Int32)

Schreibt einen Byteblock mithilfe von Daten aus einem Puffer in den aktuellen Datenstrom.

(Geerbt von UnmanagedMemoryStream)
Write(ReadOnlySpan<Byte>)

Schreibt einen Byteblock in den aktuellen nicht verwalteten Speicherstrom mithilfe von Daten aus der bereitgestellten Bytespanne.

(Geerbt von UnmanagedMemoryStream)
WriteAsync(Byte[], Int32, Int32)

Schreibt asynchron eine Bytesequenz in den aktuellen Datenstrom und wechselt die aktuelle Position innerhalb dieses Datenstroms um die Anzahl der geschriebenen Bytes.

(Geerbt von Stream)
WriteAsync(Byte[], Int32, Int32, CancellationToken)

Schreibt asynchron eine Bytesequenz in den aktuellen Datenstrom, wechselt die aktuelle Position innerhalb dieses Datenstroms um die Anzahl der geschriebenen Bytes und überwacht Abbruchanforderungen.

(Geerbt von UnmanagedMemoryStream)
WriteAsync(ReadOnlyMemory<Byte>, CancellationToken)

Schreibt asynchron eine Spanne von Bytes in den aktuellen Datenstrom, wechselt die aktuelle Position innerhalb dieses Datenstroms um die Anzahl der geschriebenen Bytes und überwacht Abbruchanforderungen.

(Geerbt von UnmanagedMemoryStream)
WriteByte(Byte)

Schreibt ein Byte an die aktuelle Position im Dateidatenstrom.

(Geerbt von UnmanagedMemoryStream)

Erweiterungsmethoden

CopyToAsync(Stream, PipeWriter, CancellationToken)

Liest die Bytes asynchron aus dem Stream und schreibt sie mithilfe eines Abbruchtokens in das angegebene PipeWriter.

ConfigureAwait(IAsyncDisposable, Boolean)

Konfiguriert, wie auf die von einem asynchronen Einweg zurückgegebenen Aufgaben gewartet wird.

Gilt für:

Weitere Informationen