Aracılığıyla paylaş


MemoryMappedViewAccessor Sınıf

Tanım

Belleğe eşlenmiş 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 bellekle eşlenmiş büyük bir dosyadan 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

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

Belleğe eşlenen bir dosyanın görünümünün tutamacını alır.

Yöntemler

Dispose()

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

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

UnmanagedMemoryAccessor tarafından kullanılan yönetilmeyen kaynakları serbest bırakır ve yönetilen kaynakları isteğe bağlı olarak 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()

Type Geçerli örneğini 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 Objectöğesinin sığ 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)

Erişimciden türündeki T yapıları türündeki 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 bir değer 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 imzasız bir 16 bit tamsayı okur.

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

Erişimciden imzasız bir 32 bit tamsayı okur.

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

Erişimciden imzasız bir 64 bit tamsayı okur.

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

Geçerli nesneyi temsil eden dizeyi 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 bir 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 imzasız bir 32 bit tamsayı yazar.

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

Erişimciye imzasız 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)

Bir tür T dizisinden yapıları erişimciye yazar.

(Devralındığı yer: UnmanagedMemoryAccessor)

Şunlara uygulanır

Ayrıca bkz.