MemoryMappedFile.CreateViewStream Method

Definition

Overloads

CreateViewStream()

Creates a stream that maps to a view of the memory-mapped file.

CreateViewStream(Int64, Int64)

Creates a stream that maps to a view of the memory-mapped file, and that has the specified offset and size.

CreateViewStream(Int64, Int64, MemoryMappedFileAccess)

Creates a stream that maps to a view of the memory-mapped file, and that has the specified offset, size, and access type.

CreateViewStream()

Creates a stream that maps to a view of the memory-mapped file.

public System.IO.MemoryMappedFiles.MemoryMappedViewStream CreateViewStream ();
Returns

A stream of memory.

Exceptions

Access to the memory-mapped file is unauthorized.

Examples

The following example creates a stream and writes a value to it. This code example is part of a larger example provided for the CreateNew method.

using (MemoryMappedViewStream stream = mmf.CreateViewStream())
{
    BinaryWriter writer = new BinaryWriter(stream);
    writer.Write(1);
}
Using Stream As MemoryMappedViewStream = mmf.CreateViewStream()
    Dim writer As BinaryWriter = New BinaryWriter(Stream)
    writer.Write(1)
End Using

Remarks

You can use the stream returned by this method for sequential access to a memory-mapped file, such as for inter-process communications.

CreateViewStream(Int64, Int64)

Creates a stream that maps to a view of the memory-mapped file, and that has the specified offset and size.

public System.IO.MemoryMappedFiles.MemoryMappedViewStream CreateViewStream (long offset, long size);
Parameters
offset
Int64

The byte at which to start the view.

size
Int64

The size of the view. Specify 0 (zero) to create a view that starts at offset and ends approximately at the end of the memory-mapped file.

Returns

A stream of memory that has the specified offset and size.

Exceptions

offset or size is a negative value.

-or-

size is greater than the logical address space.

Access to the memory-mapped file is unauthorized.

size is greater than the total virtual memory.

Remarks

You can use the stream returned by this method for sequential access to a memory-mapped file, such as for inter-process communications.

To create a complete view of the memory-mapped file, specify 0 (zero) for the size parameter. If you do this, the size of the view might be smaller or larger than the size of the source file on disk. This is because views are provided in units of system pages, and the size of the view is rounded up to the next system page size.

CreateViewStream(Int64, Int64, MemoryMappedFileAccess)

Creates a stream that maps to a view of the memory-mapped file, and that has the specified offset, size, and access type.

public System.IO.MemoryMappedFiles.MemoryMappedViewStream CreateViewStream (long offset, long size, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access);
Parameters
offset
Int64

The byte at which to start the view.

size
Int64

The size of the view. Specify 0 (zero) to create a view that starts at offset and ends approximately at the end of the memory-mapped file.

access
MemoryMappedFileAccess

One of the enumeration values that specifies the type of access allowed to the memory-mapped file. The default is ReadWrite.

Returns

A stream of memory that has the specified characteristics.

Exceptions

offset or size is a negative value.

-or-

size is greater than the logical address space.

-or-

access is not a valid MemoryMappedFileAccess enumeration value.

access is invalid for the memory-mapped file.

size is greater than the total virtual memory.

-or-

access is invalid for the memory-mapped file.

Remarks

You can use the stream returned by this method for sequential access to a memory-mapped file, such as for inter-process communications.

To create a complete view of the memory-mapped file, specify 0 (zero) for the size parameter. If you do this, the size of the view might be smaller or larger than the size of the source file on disk. This is because views are provided in units of system pages, and the size of the view is rounded up to the next system page size.