MemoryMappedFile.CreateViewAccessor Método
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Cria um MemoryMappedViewAccessor que é mapeado para uma exibição do arquivo mapeado na memória.
Sobrecargas
CreateViewAccessor() |
Cria um MemoryMappedViewAccessor que é mapeado para uma exibição do arquivo mapeado na memória. |
CreateViewAccessor(Int64, Int64) |
Cria um MemoryMappedViewAccessor que é mapeado para uma exibição do arquivo mapeado em memória e que tem o deslocamento e tamanho especificados. |
CreateViewAccessor(Int64, Int64, MemoryMappedFileAccess) |
Cria um MemoryMappedViewAccessor que mapeia para uma exibição do arquivo com mapeamento em memória e que tem o deslocamento, o tamanho e as restrições de acesso especificados. |
CreateViewAccessor()
- Origem:
- MemoryMappedFile.cs
- Origem:
- MemoryMappedFile.cs
- Origem:
- MemoryMappedFile.cs
Cria um MemoryMappedViewAccessor que é mapeado para uma exibição do arquivo mapeado na memória.
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
Retornos
Um bloco de memória acessível aleatoriamente.
Exceções
O acesso ao arquivo mapeado na memória não está autorizado.
Comentários
Você pode usar a exibição retornada por esse método para acesso aleatório a um arquivo mapeado em memória.
Confira também
Aplica-se a
CreateViewAccessor(Int64, Int64)
- Origem:
- MemoryMappedFile.cs
- Origem:
- MemoryMappedFile.cs
- Origem:
- MemoryMappedFile.cs
Cria um MemoryMappedViewAccessor que é mapeado para uma exibição do arquivo mapeado em memória e que tem o deslocamento e tamanho especificados.
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
Parâmetros
- offset
- Int64
O byte no qual a exibição é iniciada.
- size
- Int64
O tamanho da exibição. Especifique 0 (zero) para criar uma exibição que começa em offset
e termina aproximadamente no final do arquivo com mapeamento em memória.
Retornos
Um bloco de memória acessível aleatoriamente.
Exceções
offset
ou size
é um valor negativo.
- ou -
size
é maior que o espaço de endereço lógico.
O acesso ao arquivo mapeado na memória não está autorizado.
Ocorreu um erro de E/S.
Exemplos
O exemplo a seguir cria uma exibição de um arquivo mapeado em memória e o edita. Este exemplo de código faz parte de um exemplo maior fornecido para a MemoryMappedFile classe .
// 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
Comentários
Você pode usar a exibição retornada por esse método para acesso aleatório a um arquivo mapeado em memória.
Para criar uma exibição completa do arquivo mapeado na memória, especifique 0 (zero) para o size
parâmetro . Se você fizer isso, o tamanho da exibição poderá ser maior do que o tamanho do arquivo de origem no disco. Isso ocorre porque as exibições são fornecidas em unidades de páginas do sistema e o tamanho do modo de exibição é arredondado para o próximo tamanho de página do sistema.
Confira também
Aplica-se a
CreateViewAccessor(Int64, Int64, MemoryMappedFileAccess)
- Origem:
- MemoryMappedFile.cs
- Origem:
- MemoryMappedFile.cs
- Origem:
- MemoryMappedFile.cs
Cria um MemoryMappedViewAccessor que mapeia para uma exibição do arquivo com mapeamento em memória e que tem o deslocamento, o tamanho e as restrições de acesso especificados.
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
Parâmetros
- offset
- Int64
O byte no qual a exibição é iniciada.
- size
- Int64
O tamanho da exibição. Especifique 0 (zero) para criar uma exibição que começa em offset
e termina aproximadamente no final do arquivo com mapeamento em memória.
- access
- MemoryMappedFileAccess
Um dos valores de enumeração que especifica o tipo de acesso permitido para o arquivo mapeado na memória. O padrão é ReadWrite.
Retornos
Um bloco de memória acessível aleatoriamente.
- Atributos
Exceções
offset
ou size
é um valor negativo.
- ou -
size
é maior que o espaço de endereço lógico.
access
é inválido para o arquivo com mapeamento em memória.
Ocorreu um erro de E/S.
Comentários
Você pode usar a exibição retornada por esse método para acesso aleatório a um arquivo mapeado em memória.
Para criar uma exibição completa do arquivo mapeado na memória, especifique 0 (zero) para o size
parâmetro . Se você fizer isso, o tamanho da exibição poderá ser maior do que o tamanho do arquivo de origem no disco. Isso ocorre porque as exibições são fornecidas em unidades de páginas do sistema e o tamanho do modo de exibição é arredondado para o próximo tamanho de página do sistema.