MemoryMappedFile.CreateViewAccessor Yöntem

Tanım

MemoryMappedViewAccessor Bellekle eşlenen dosyanın görünümüne eşlenen bir oluşturur.

Aşırı Yüklemeler

CreateViewAccessor()

MemoryMappedViewAccessor Bellekle eşlenen dosyanın görünümüne eşlenen bir oluşturur.

CreateViewAccessor(Int64, Int64)

MemoryMappedViewAccessor Bellekle eşlenen dosyanın görünümüne eşlenen ve belirtilen uzaklık ve boyuta sahip bir oluşturur.

CreateViewAccessor(Int64, Int64, MemoryMappedFileAccess)

MemoryMappedViewAccessor Bellekle eşlenen dosyanın görünümüne eşlenen ve belirtilen uzaklık, boyut ve erişim kısıtlamalarına sahip olan bir oluşturur.

CreateViewAccessor()

MemoryMappedViewAccessor Bellekle eşlenen dosyanın görünümüne eşlenen bir oluşturur.

public:
 System::IO::MemoryMappedFiles::MemoryMappedViewAccessor ^ CreateViewAccessor();
public System.IO.MemoryMappedFiles.MemoryMappedViewAccessor CreateViewAccessor ();
member this.CreateViewAccessor : unit -> System.IO.MemoryMappedFiles.MemoryMappedViewAccessor
Public Function CreateViewAccessor () As MemoryMappedViewAccessor

Döndürülenler

MemoryMappedViewAccessor

Rastgele erişilebilir bellek bloğu.

Özel durumlar

Belleğe eşlenen dosyaya erişim yetkisizdir.

Açıklamalar

Bellek eşlemeli bir dosyaya rastgele erişim için bu yöntem tarafından döndürülen görünümü kullanabilirsiniz.

Ayrıca bkz.

Şunlara uygulanır

CreateViewAccessor(Int64, Int64)

MemoryMappedViewAccessor Bellekle eşlenen dosyanın görünümüne eşlenen ve belirtilen uzaklık ve boyuta sahip bir oluşturur.

public:
 System::IO::MemoryMappedFiles::MemoryMappedViewAccessor ^ CreateViewAccessor(long offset, long size);
public System.IO.MemoryMappedFiles.MemoryMappedViewAccessor CreateViewAccessor (long offset, long size);
member this.CreateViewAccessor : int64 * int64 -> System.IO.MemoryMappedFiles.MemoryMappedViewAccessor
Public Function CreateViewAccessor (offset As Long, size As Long) As MemoryMappedViewAccessor

Parametreler

offset
Int64

Görünümün başlatıldığı bayt.

size
Int64

Görünümün boyutu. Bellekle eşlenen dosyanın yaklaşık sonunda başlayan offset ve biten bir görünüm oluşturmak için 0 (sıfır) değerini belirtin.

Döndürülenler

MemoryMappedViewAccessor

Rastgele erişilebilir bellek bloğu.

Özel durumlar

offset veya size negatif bir değerdir.

-veya- size mantıksal adres alanından büyüktür.

Belleğe eşlenen dosyaya erişim yetkisizdir.

G/ç hatası oluştu.

Örnekler

Aşağıdaki örnek, belleğe eşlenmiş bir dosyanın görünümünü oluşturur ve düzenler. 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

Bellek eşlemeli bir dosyaya rastgele erişim için bu yöntem tarafından döndürülen görünümü kullanabilirsiniz.

Bellekle eşlenen dosyanın tam görünümünü oluşturmak için parametresi için size 0 (sıfır) değerini belirtin. Bunu yaparsanız, görünümün boyutu disk üzerindeki kaynak dosyanın boyutundan daha büyük olabilir. Bunun nedeni, görünümlerin sistem sayfaları birimi cinsinden sağlanması ve görünümün boyutunun bir sonraki sistem sayfası boyutuna yuvarlanmış olmasıdır.

Ayrıca bkz.

Şunlara uygulanır

CreateViewAccessor(Int64, Int64, MemoryMappedFileAccess)

MemoryMappedViewAccessor Bellekle eşlenen dosyanın görünümüne eşlenen ve belirtilen uzaklık, boyut ve erişim kısıtlamalarına sahip olan bir oluşturur.

public:
 System::IO::MemoryMappedFiles::MemoryMappedViewAccessor ^ CreateViewAccessor(long offset, long size, System::IO::MemoryMappedFiles::MemoryMappedFileAccess access);
public System.IO.MemoryMappedFiles.MemoryMappedViewAccessor CreateViewAccessor (long offset, long size, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access);
[System.Security.SecurityCritical]
public System.IO.MemoryMappedFiles.MemoryMappedViewAccessor CreateViewAccessor (long offset, long size, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access);
member this.CreateViewAccessor : int64 * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess -> System.IO.MemoryMappedFiles.MemoryMappedViewAccessor
[<System.Security.SecurityCritical>]
member this.CreateViewAccessor : int64 * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess -> System.IO.MemoryMappedFiles.MemoryMappedViewAccessor
Public Function CreateViewAccessor (offset As Long, size As Long, access As MemoryMappedFileAccess) As MemoryMappedViewAccessor

Parametreler

offset
Int64

Görünümün başlatıldığı bayt.

size
Int64

Görünümün boyutu. Bellekle eşlenen dosyanın yaklaşık sonunda başlayan offset ve biten bir görünüm oluşturmak için 0 (sıfır) değerini belirtin.

access
MemoryMappedFileAccess

Bellekle eşlenen dosyaya izin verilen erişim türünü belirten numaralandırma değerlerinden biri. Varsayılan değer: ReadWrite.

Döndürülenler

MemoryMappedViewAccessor

Rastgele erişilebilir bellek bloğu.

Öznitelikler

Özel durumlar

offset veya size negatif bir değerdir.

-veya- size mantıksal adres alanından büyüktür.

access bellekle eşlenen dosya için geçersiz.

G/ç hatası oluştu.

Açıklamalar

Bellek eşlemeli bir dosyaya rastgele erişim için bu yöntem tarafından döndürülen görünümü kullanabilirsiniz.

Bellekle eşlenen dosyanın tam görünümünü oluşturmak için parametresi için size 0 (sıfır) değerini belirtin. Bunu yaparsanız, görünümün boyutu disk üzerindeki kaynak dosyanın boyutundan daha büyük olabilir. Bunun nedeni, görünümlerin sistem sayfaları birimi cinsinden sağlanması ve görünümün boyutunun bir sonraki sistem sayfası boyutuna yuvarlanmış olmasıdır.

Ayrıca bkz.

Şunlara uygulanır