Share via


MemoryMappedFile.CreateViewAccessor Metoda

Definice

Vytvoří MemoryMappedViewAccessor soubor, který se mapuje na zobrazení souboru mapované paměti.

Přetížení

CreateViewAccessor()

Vytvoří MemoryMappedViewAccessor soubor, který se mapuje na zobrazení souboru mapované paměti.

CreateViewAccessor(Int64, Int64)

Vytvoří soubor MemoryMappedViewAccessor , který se mapuje na zobrazení souboru mapované paměti a který má zadaný posun a velikost.

CreateViewAccessor(Int64, Int64, MemoryMappedFileAccess)

Vytvoří soubor MemoryMappedViewAccessor , který se mapuje na zobrazení souboru mapované paměti a který má zadaný posun, velikost a omezení přístupu.

CreateViewAccessor()

Zdroj:
MemoryMappedFile.cs
Zdroj:
MemoryMappedFile.cs
Zdroj:
MemoryMappedFile.cs

Vytvoří MemoryMappedViewAccessor soubor, který se mapuje na zobrazení souboru mapované paměti.

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

Návraty

Náhodně přístupný blok paměti.

Výjimky

Přístup k souboru mapované paměti je neoprávněný.

Poznámky

Zobrazení vrácené touto metodou můžete použít pro náhodný přístup k souboru mapované paměti.

Viz také

Platí pro

CreateViewAccessor(Int64, Int64)

Zdroj:
MemoryMappedFile.cs
Zdroj:
MemoryMappedFile.cs
Zdroj:
MemoryMappedFile.cs

Vytvoří soubor MemoryMappedViewAccessor , který se mapuje na zobrazení souboru mapované paměti a který má zadaný posun a velikost.

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

Parametry

offset
Int64

Bajt, na kterém se má zobrazení spustit.

size
Int64

Velikost zobrazení. Zadáním hodnoty 0 (nula) vytvoříte zobrazení, které začíná na offset a končí přibližně na konci souboru mapované paměti.

Návraty

Náhodně přístupný blok paměti.

Výjimky

offset nebo size je záporná hodnota.

-nebo-

size je větší než logický adresní prostor.

Přístup k souboru mapované paměti je neoprávněný.

Došlo k vstupně-výstupní chybě.

Příklady

Následující příklad vytvoří zobrazení souboru mapovaného paměti a upraví ho. Tento příklad kódu je součástí většího příkladu MemoryMappedFile pro třídu.

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

Poznámky

Zobrazení vrácené touto metodou můžete použít pro náhodný přístup k souboru mapované paměti.

Pokud chcete vytvořit úplné zobrazení souboru mapovaného paměti, jako parametr zadejte hodnotu 0 (nula).size Pokud to uděláte, může být velikost zobrazení větší než velikost zdrojového souboru na disku. Je to proto, že zobrazení jsou k dispozici v jednotkách systémových stránek a velikost zobrazení se zaokrouhlí nahoru na další velikost systémové stránky.

Viz také

Platí pro

CreateViewAccessor(Int64, Int64, MemoryMappedFileAccess)

Zdroj:
MemoryMappedFile.cs
Zdroj:
MemoryMappedFile.cs
Zdroj:
MemoryMappedFile.cs

Vytvoří soubor MemoryMappedViewAccessor , který se mapuje na zobrazení souboru mapované paměti a který má zadaný posun, velikost a omezení přístupu.

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

Parametry

offset
Int64

Bajt, na kterém se má zobrazení spustit.

size
Int64

Velikost zobrazení. Zadáním hodnoty 0 (nula) vytvoříte zobrazení, které začíná na offset a končí přibližně na konci souboru mapované paměti.

access
MemoryMappedFileAccess

Jedna z hodnot výčtu, která určuje typ přístupu povoleného k souboru mapované paměti. Výchozí formát je ReadWrite.

Návraty

Náhodně přístupný blok paměti.

Atributy

Výjimky

offset nebo size je záporná hodnota.

-nebo-

size je větší než logický adresní prostor.

access je neplatný pro soubor mapovaný na paměť.

Došlo k vstupně-výstupní chybě.

Poznámky

Zobrazení vrácené touto metodou můžete použít pro náhodný přístup k souboru mapované paměti.

Pokud chcete vytvořit úplné zobrazení souboru mapovaného paměti, jako parametr zadejte hodnotu 0 (nula).size Pokud to uděláte, může být velikost zobrazení větší než velikost zdrojového souboru na disku. Je to proto, že zobrazení jsou k dispozici v jednotkách systémových stránek a velikost zobrazení se zaokrouhlí nahoru na další velikost systémové stránky.

Viz také

Platí pro