MemoryMappedFile.CreateNew Method (String, Int64, MemoryMappedFileAccess, MemoryMappedFileOptions, MemoryMappedFileSecurity, HandleInheritability)

Creates a memory-mapped file that has the specified capacity, access type, memory allocation, security permissions, and inheritability in system memory.

Namespace:  System.IO.MemoryMappedFiles
Assembly:  System.Core (in System.Core.dll)

[SecurityPermissionAttribute(SecurityAction.Demand, Flags = SecurityPermissionFlag.UnmanagedCode)]
public static MemoryMappedFile CreateNew(
	string mapName,
	long capacity,
	MemoryMappedFileAccess access,
	MemoryMappedFileOptions options,
	MemoryMappedFileSecurity memoryMappedFileSecurity,
	HandleInheritability inheritability
)

Parameters

mapName
Type: System.String
A name to assign to the memory-mapped file.
capacity
Type: System.Int64
The maximum size, in bytes, to allocate to the memory-mapped file.
access
Type: System.IO.MemoryMappedFiles.MemoryMappedFileAccess
One of the enumeration values that specifies the type of access allowed to the memory-mapped file. The default is ReadWrite.
options
Type: System.IO.MemoryMappedFiles.MemoryMappedFileOptions
A bitwise combination of enumeration values that specifies memory allocation options for the memory-mapped file.
memoryMappedFileSecurity
Type: System.IO.MemoryMappedFiles.MemoryMappedFileSecurity
The permissions that can be granted for file access and operations on memory-mapped files.
This parameter can be null.
inheritability
Type: System.IO.HandleInheritability
One of the enumeration values that specifies whether a handle to the memory-mapped file can be inherited by a child process. The default is None.

Return Value

Type: System.IO.MemoryMappedFiles.MemoryMappedFile
A memory-mapped file that has the specified characteristics.

ExceptionCondition
ArgumentException

mapName is an empty string.

-or-

access is set to write-only with the Write enumeration value.

ArgumentNullException

mapName is null.

ArgumentOutOfRangeException

capacity is less than or equal to zero.

-or-

access is not a valid MemoryMappedFileAccess enumeration value.

-or-

inheritability is not a valid HandleInheritability enumeration value.

Use this method to create a memory-mapped file that is not persisted (that is, not associated with a file on disk), which you can use to share data between processes.

.NET Framework

Supported in: 4

.NET Framework Client Profile

Supported in: 4

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Was this page helpful?
(1500 characters remaining)
Thank you for your feedback

Community Additions

ADD
Show:
© 2014 Microsoft