MemoryMappedViewAccessor Sınıf

Tanım

Bellekle eşlenen bir dosyanın rastgele erişilen görünümünü temsil eder.

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
Devralma
MemoryMappedViewAccessor

Örnekler

Aşağıdaki örnek, düzenlemek üzere büyük bir bellek eşleme dosyasından bir MemoryMappedViewAccessor alır.

Bu kod örneği, sınıfı için MemoryMappedFile sağlanan daha büyük bir örneğin parçasıdır.

// 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

Açıklamalar

CreateViewAccessor Bu görünümü almak için nesnesinin MemoryMappedFile yöntemini kullanın.

Özellikler

Name Description
CanRead

Erişimcinin okunabilir olup olmadığını belirler.

(Devralındığı yer: UnmanagedMemoryAccessor)
CanWrite

Aksesuarın yazılabilir olup olmadığını belirler.

(Devralındığı yer: UnmanagedMemoryAccessor)
Capacity

Erişimcinin kapasitesini alır.

(Devralındığı yer: UnmanagedMemoryAccessor)
IsOpen

Erişimcinin şu anda bir işlem tarafından açık olup olmadığını belirler.

(Devralındığı yer: UnmanagedMemoryAccessor)
PointerOffset

Bu görünümün başlangıç konumunun bellekle eşlenen dosyanın başından uzaklığını gösteren bayt sayısını alır.

SafeMemoryMappedViewHandle

Bellekle eşlenen bir dosyanın görünümünün tanıtıcısını alır.

Yöntemler

Name Description
Dispose()

tarafından UnmanagedMemoryAccessorkullanılan tüm kaynakları serbest bırakır.

(Devralındığı yer: UnmanagedMemoryAccessor)
Dispose(Boolean)

tarafından UnmanagedMemoryAccessor kullanılan yönetilmeyen kaynakları serbest bırakır ve isteğe bağlı olarak yönetilen kaynakları serbest bırakır.

(Devralındığı yer: UnmanagedMemoryAccessor)
Equals(Object)

Belirtilen nesnenin geçerli nesneye eşit olup olmadığını belirler.

(Devralındığı yer: Object)
Flush()

Bu görünüm için tüm arabellekleri temizler ve arabelleğe alınan verilerin temel alınan dosyaya yazılmasına neden olur.

GetHashCode()

Varsayılan karma işlevi işlevi görür.

(Devralındığı yer: Object)
GetType()

Geçerli örneğin Type alır.

(Devralındığı yer: Object)
Initialize(SafeBuffer, Int64, Int64, FileAccess)

Erişimci için başlangıç değerlerini ayarlar.

(Devralındığı yer: UnmanagedMemoryAccessor)
MemberwiseClone()

Geçerli Objectbasit bir kopyasını oluşturur.

(Devralındığı yer: Object)
Read<T>(Int64, T)

Erişimciden sağlanan başvuruya türdeki T bir yapıyı okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadArray<T>(Int64, T[], Int32, Int32)

Türün T yapılarını erişimciden türünde Tbir diziye okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadBoolean(Int64)

Erişimciden bir Boole değeri okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadByte(Int64)

Erişimciden bir bayt değeri okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadChar(Int64)

Erişimciden bir karakter okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadDecimal(Int64)

Erişimciden ondalık değeri okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadDouble(Int64)

Erişimciden çift duyarlıklı kayan nokta değerini okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadInt16(Int64)

Erişimciden 16 bitlik bir tamsayı okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadInt32(Int64)

Erişimciden 32 bitlik bir tamsayı okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadInt64(Int64)

Erişimciden 64 bitlik bir tamsayı okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadSByte(Int64)

Erişimciden 8 bit imzalı bir tamsayı okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadSingle(Int64)

Erişimciden tek duyarlıklı kayan nokta değerini okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadUInt16(Int64)

Erişimciden işaretsiz bir 16 bit tamsayı okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadUInt32(Int64)

Erişimciden işaretsiz bir 32 bit tamsayı okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ReadUInt64(Int64)

Erişimciden işaretsiz bir 64 bit tamsayı okur.

(Devralındığı yer: UnmanagedMemoryAccessor)
ToString()

Geçerli nesneyi temsil eden bir dize döndürür.

(Devralındığı yer: Object)
Write(Int64, Boolean)

Erişimciye bir Boole değeri yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, Byte)

Erişimciye bir bayt değeri yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, Char)

Erişimciye bir karakter yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, Decimal)

Erişimciye ondalık değer yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, Double)

Erişimciye bir Double değer yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, Int16)

Erişimciye 16 bitlik bir tamsayı yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, Int32)

Erişimciye 32 bitlik bir tamsayı yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, Int64)

Erişimciye 64 bitlik bir tamsayı yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, SByte)

Erişimciye 8 bitlik bir tamsayı yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, Single)

Erişimciye bir Single yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, UInt16)

Erişimciye işaretsiz bir 16 bit tamsayı yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, UInt32)

Erişimciye işaretsiz bir 32 bit tamsayı yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write(Int64, UInt64)

Erişimciye işaretsiz bir 64 bit tamsayı yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
Write<T>(Int64, T)

Erişimciye bir yapı yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)
WriteArray<T>(Int64, T[], Int32, Int32)

Yapılarını bir tür T dizisinden erişimciye yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)

Şunlara uygulanır

Ayrıca bkz.