IMemoryBuffer Schnittstelle
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt einen Speicherpuffer mit Verweisanzahl dar.
public interface class IMemoryBuffer : IClosable
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.Guid(4223982890, 9307, 4580, 175, 152, 104, 148, 35, 38, 12, 248)]
struct IMemoryBuffer : IClosable
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.Guid(4223982890, 9307, 4580, 175, 152, 104, 148, 35, 38, 12, 248)]
public interface IMemoryBuffer : System.IDisposable
Public Interface IMemoryBuffer
Implements IDisposable
- Abgeleitet
- Attribute
- Implementiert
Windows-Anforderungen
Gerätefamilie |
Windows 10 (eingeführt in 10.0.10240.0)
|
API contract |
Windows.Foundation.UniversalApiContract (eingeführt in v1.0)
|
Hinweise
IMemoryBuffer bietet ein Interoperabilitätsprotokoll zwischen dem nicht verwalteten, direkten Speicherzugriff der nativen Plattform und der referenzgezählten, möglicherweise über Müll gesammelten Umgebung, in der verwaltete Objekte gehostet werden. Das System des verwalteten Typs erfordert eine deterministische Lebensdauer für alle Typen. Diese Lebensdauer ist manchmal implizit (Werttypen werden nach Wert kopiert) oder explizit (Verweistypen werden referenzgezählt). Aus Leistungsgründen muss Code jedoch gelegentlich mit Typen interagieren, die nicht in beide Modelle passen.
Ein häufiges Beispiel, das vom IMemoryBuffer-Design behandelt wird, ist der Zugriff auf einen direkten Zeiger auf einen Speicherblock, in dem Leistungseinschränkungen erfordern, dass der Arbeitsspeicher nicht kopiert wird. Die IMemoryBuffer-Abstraktion kapselt einen solchen direkten Speicherzeiger in einer Reihe von Referenzzählungsobjekten, die den expliziten Erwerb des rohen Speicherzeigers überschichtet und dessen deterministische Freigabe zulassen.
Methoden
CreateReference() |
Gibt ein neues Windows-Runtime-Objekt zurück, das die IMemoryBufferReference-Schnittstelle implementiert. |
Dispose() |
Führt anwendungsspezifische Aufgaben durch, die mit der Freigabe, der Zurückgabe oder dem Zurücksetzen von nicht verwalteten Ressourcen zusammenhängen. |