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

.NET Framework (current version)
 

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)

[SecurityCriticalAttribute]
[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.

Exception Condition
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.

SecurityPermission

for access to unmanaged code. Associated enumeration: SecurityPermissionFlag.UnmanagedCode.

.NET Framework
Available since 4.0
Return to top
Show: