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


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)

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

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