Поделиться через


IMemoryBuffer Интерфейс

Определение

Представляет буфер памяти с подсчетом ссылок.

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
Производный
Атрибуты
Реализации

Требования к Windows

Семейство устройств
Windows 10 (появилось в 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (появилось в v1.0)

Комментарии

IMemoryBuffer предоставляет протокол взаимодействия между неуправляемым прямым доступом к памяти собственной платформы и средой с подсчетом ссылок, потенциально собираемой мусором среды, в которой размещаются управляемые объекты. Для системы управляемых типов требуется детерминированное время существования для всех типов. Это время существования иногда является неявным (типы значений копируются по значению) или явным (ссылочные типы учитываются). Однако из соображений производительности коду иногда приходится взаимодействовать с типами, которые естественным образом не вписываются в ни один из моделей.

Распространенным примером, к которому относится конструктор IMemoryBuffer, является доступ к прямому указателю на блок памяти, где ограничения производительности требуют, чтобы память не копировалась. Абстракция IMemoryBuffer инкапсулирует такой прямой указатель памяти в наборе объектов подсчета ссылок, которые позволяют явно получить необработанный указатель памяти и разрешить детерминированное освобождение.

Методы

CreateReference()

Возвращает новый объект среда выполнения Windows, реализующий интерфейс IMemoryBufferReference.

Dispose()

Выполняет определяемые приложением задачи, связанные с удалением, высвобождением или сбросом неуправляемых ресурсов.

Применяется к

См. также раздел