MemoryMappedViewAccessor Класс

Определение

Представляет случайное представление сопоставленного с памятью файла.

public ref class MemoryMappedViewAccessor sealed : System::IO::UnmanagedMemoryAccessor
public sealed class MemoryMappedViewAccessor : System.IO.UnmanagedMemoryAccessor
type MemoryMappedViewAccessor = class
    inherit UnmanagedMemoryAccessor
Public NotInheritable Class MemoryMappedViewAccessor
Inherits UnmanagedMemoryAccessor
Наследование
MemoryMappedViewAccessor

Примеры

Следующий пример получает MemoryMappedViewAccessor из большого сопоставленного с памятью файла для редактирования.

Этот пример кода является частью более крупного примера, предоставленного для MemoryMappedFile класса.

// Create a random access view, from the 256th megabyte (the offset)
// to the 768th megabyte (the offset plus length).
using (var accessor = mmf.CreateViewAccessor(offset, length))
{
    int colorSize = Marshal.SizeOf(typeof(MyColor));
    MyColor color;

    // Make changes to the view.
    for (long i = 0; i < length; i += colorSize)
    {
        accessor.Read(i, out color);
        color.Brighten(10);
        accessor.Write(i, ref color);
    }
}
' Create a random access view, from the 256th megabyte (the offset)
' to the 768th megabyte (the offset plus length).
Using accessor = mmf.CreateViewAccessor(offset, length)
    Dim colorSize As Integer = Marshal.SizeOf(GetType(MyColor))
    Dim color As MyColor
    Dim i As Long = 0

    ' Make changes to the view.
    Do While (i < length)
        accessor.Read(i, color)
        color.Brighten(10)
        accessor.Write(i, color)
        i += colorSize
    Loop
End Using

Комментарии

CreateViewAccessor Используйте метод MemoryMappedFile объекта для получения этого представления.

Свойства

Имя Описание
CanRead

Определяет, доступен ли метод доступа для чтения.

(Унаследовано от UnmanagedMemoryAccessor)
CanWrite

Определяет, является ли аксессуар доступным для записи.

(Унаследовано от UnmanagedMemoryAccessor)
Capacity

Возвращает емкость метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
IsOpen

Определяет, открыт ли в данный момент метод доступа процессом.

(Унаследовано от UnmanagedMemoryAccessor)
PointerOffset

Возвращает количество байтов, по которым начальная позиция этого представления смещается с начала сопоставленного в памяти файла.

SafeMemoryMappedViewHandle

Возвращает дескриптор представления сопоставленного с памятью файла.

Методы

Имя Описание
Dispose()

Освобождает все ресурсы, используемые параметром UnmanagedMemoryAccessor.

(Унаследовано от UnmanagedMemoryAccessor)
Dispose(Boolean)

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

(Унаследовано от UnmanagedMemoryAccessor)
Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
Flush()

Очищает все буферы для этого представления и приводит к записи всех буферных данных в базовый файл.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
Initialize(SafeBuffer, Int64, Int64, FileAccess)

Задает начальные значения для метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
Read<T>(Int64, T)

Считывает структуру типа T из метода доступа в указанную ссылку.

(Унаследовано от UnmanagedMemoryAccessor)
ReadArray<T>(Int64, T[], Int32, Int32)

Считывает структуры типа T из метода доступа в массив типа T.

(Унаследовано от UnmanagedMemoryAccessor)
ReadBoolean(Int64)

Считывает логическое значение из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadByte(Int64)

Считывает значение байта из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadChar(Int64)

Считывает символ из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadDecimal(Int64)

Считывает десятичное значение из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadDouble(Int64)

Считывает значение с плавающей запятой двойной точности из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadInt16(Int64)

Считывает 16-разрядное целое число из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadInt32(Int64)

Считывает 32-разрядное целое число из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadInt64(Int64)

Считывает 64-разрядное целое число из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadSByte(Int64)

Считывает 8-разрядное целое число со знаком из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadSingle(Int64)

Считывает значение с плавающей запятой с одной точностью из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadUInt16(Int64)

Считывает 16-разрядное целое число без знака из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadUInt32(Int64)

Считывает 32-разрядное целое число без знака из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ReadUInt64(Int64)

Считывает 64-разрядное целое число без знака из метода доступа.

(Унаследовано от UnmanagedMemoryAccessor)
ToString()

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

(Унаследовано от Object)
Write(Int64, Boolean)

Записывает логическое значение в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, Byte)

Записывает значение байтов в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, Char)

Записывает символ в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, Decimal)

Записывает десятичное значение в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, Double)

Записывает Double значение в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, Int16)

Записывает 16-разрядное целое число в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, Int32)

Записывает 32-разрядное целое число в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, Int64)

Записывает 64-разрядное целое число в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, SByte)

Записывает 8-разрядное целое число в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, Single)

Записывает его Single в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, UInt16)

Записывает 16-разрядное целое число без знака в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, UInt32)

Записывает 32-разрядное целое число без знака в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write(Int64, UInt64)

Записывает 64-разрядное целое число без знака в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
Write<T>(Int64, T)

Записывает структуру в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)
WriteArray<T>(Int64, T[], Int32, Int32)

Записывает структуры из массива типов T в метод доступа.

(Унаследовано от UnmanagedMemoryAccessor)

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

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