MemoryMappedFile.CreateViewAccessor Metoda

Definice

MemoryMappedViewAccessor Vytvoří mapování na zobrazení souboru mapovaného paměti.

Přetížení

CreateViewAccessor()

MemoryMappedViewAccessor Vytvoří mapování na zobrazení souboru mapovaného paměti.

CreateViewAccessor(Int64, Int64)

MemoryMappedViewAccessor Vytvoří mapování na zobrazení souboru mapovaného paměti a bude obsahovat zadaný posun a velikost.

CreateViewAccessor(Int64, Int64, MemoryMappedFileAccess)

MemoryMappedViewAccessor Vytvoří mapování na zobrazení souboru mapovaného paměti a bude obsahovat zadané omezení posunu, velikosti a přístupu.

CreateViewAccessor()

MemoryMappedViewAccessor Vytvoří mapování na zobrazení souboru mapovaného 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

MemoryMappedViewAccessor

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

Výjimky

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

Poznámky

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

Viz také

Platí pro

CreateViewAccessor(Int64, Int64)

MemoryMappedViewAccessor Vytvoří mapování na zobrazení souboru mapovaného paměti a bude obsahovat 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 chcete zobrazení spustit.

size
Int64

Velikost zobrazení. Zadejte hodnotu 0 (nula) pro vytvoření zobrazení, které začíná přibližně na offset konci souboru mapovaného paměti a končí přibližně na konci souboru mapovaného na paměť.

Návraty

MemoryMappedViewAccessor

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ému paměti není 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 zadaného 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 k náhodnému přístupu k souboru mapovanému v paměti.

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

Viz také

Platí pro

CreateViewAccessor(Int64, Int64, MemoryMappedFileAccess)

MemoryMappedViewAccessor Vytvoří mapování na zobrazení souboru mapovaného paměti a bude obsahovat zadané omezení posunu, velikosti a 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 chcete zobrazení spustit.

size
Int64

Velikost zobrazení. Zadejte hodnotu 0 (nula) pro vytvoření zobrazení, které začíná přibližně na offset konci souboru mapovaného paměti a končí přibližně na konci souboru mapovaného na paměť.

access
MemoryMappedFileAccess

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

Návraty

MemoryMappedViewAccessor

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 pro soubor mapovaný v paměti neplatný.

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

Poznámky

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

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

Viz také

Platí pro