MemoryMappedFile.CreateFromFile Метод

Определение

Создает сопоставленный с памятью файл из существующего файла.

Перегрузки

Имя Описание
CreateFromFile(String)

Создает сопоставленный с памятью файл из файла на диске.

CreateFromFile(String, FileMode)

Создает сопоставленный с памятью файл, имеющий указанный режим доступа из файла на диске.

CreateFromFile(String, FileMode, String)

Создает сопоставленный с памятью файл с указанным режимом доступа и именем из файла на диске.

CreateFromFile(String, FileMode, String, Int64)

Создает сопоставленный с памятью файл с указанным режимом доступа, именем и емкостью из файла на диске.

CreateFromFile(String, FileMode, String, Int64, MemoryMappedFileAccess)

Создает сопоставленный с памятью файл с указанным режимом доступа, именем, емкостью и типом доступа из файла на диске.

CreateFromFile(SafeFileHandle, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean)

Создает сопоставленный с памятью файл из существующего файла с помощью SafeFileHandle указанного режима доступа, имени, наследимости и емкости.

CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean)

Создает сопоставленный с памятью файл из существующего файла с указанным режимом доступа, именем, наследованием и емкостью.

CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, MemoryMappedFileSecurity, HandleInheritability, Boolean)

Создает сопоставленный с памятью файл с указанным именем, емкостью, типом доступа, разрешениями безопасности, наследованием и требованием к удалению из файла на диске.

CreateFromFile(String)

Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs

Создает сопоставленный с памятью файл из файла на диске.

public:
 static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::String ^ path);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path);
static member CreateFromFile : string -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (path As String) As MemoryMappedFile

Параметры

path
String

Путь к файлу для сопоставления.

Возвращаемое значение

Сопоставленный с памятью файл.

Исключения

path является пустой строкой, содержит только пробелы или содержит один или несколько недопустимых символов, как определено методом GetInvalidFileNameChars() .

–или–

path ссылается на недопустимое устройство.

path равно null.

Произошла ошибка ввода-вывода.

path превышает максимальную длину, определенную операционной системой.

Вызывающий объект не имеет необходимых разрешений для файла.

Примеры

В следующем примере метод используется CreateFromFile для создания сопоставленного с памятью файла, а затем создает сопоставленное с памятью представление с частью чрезвычайно большого файла.

using System;
using System.IO;
using System.IO.MemoryMappedFiles;
using System.Runtime.InteropServices;

class Program
{
    static void Main(string[] args)
    {
        long offset = 0x10000000; // 256 megabytes
        long length = 0x20000000; // 512 megabytes

        // Create the memory-mapped file.
        using (var mmf = MemoryMappedFile.CreateFromFile(@"c:\ExtremelyLargeImage.data", FileMode.Open,"ImgA"))
        {
            // 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);
                }
            }
        }
    }
}

public struct MyColor
{
    public short Red;
    public short Green;
    public short Blue;
    public short Alpha;

    // Make the view brighter.
    public void Brighten(short value)
    {
        Red = (short)Math.Min(short.MaxValue, (int)Red + value);
        Green = (short)Math.Min(short.MaxValue, (int)Green + value);
        Blue = (short)Math.Min(short.MaxValue, (int)Blue + value);
        Alpha = (short)Math.Min(short.MaxValue, (int)Alpha + value);
    }
}
Imports System.IO
Imports System.IO.MemoryMappedFiles
Imports System.Runtime.InteropServices

Class Program

    Sub Main()
        Dim offset As Long = &H10000000 ' 256 megabytes
        Dim length As Long = &H20000000 ' 512 megabytes

        ' Create the memory-mapped file.
        Using mmf = MemoryMappedFile.CreateFromFile("c:\ExtremelyLargeImage.data", FileMode.Open, "ImgA")
            ' 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
        End Using
    End Sub
End Class

Public Structure MyColor
    Public Red As Short
    Public Green As Short
    Public Blue As Short
    Public Alpha As Short

    ' Make the view brighter.
    Public Sub Brighten(ByVal value As Short)
        Red = CType(Math.Min(Short.MaxValue, (CType(Red, Integer) + value)), Short)
        Green = CType(Math.Min(Short.MaxValue, (CType(Green, Integer) + value)), Short)
        Blue = CType(Math.Min(Short.MaxValue, (CType(Blue, Integer) + value)), Short)
        Alpha = CType(Math.Min(Short.MaxValue, (CType(Alpha, Integer) + value)), Short)
    End Sub
End Structure

См. также раздел

Применяется к

CreateFromFile(String, FileMode)

Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs

Создает сопоставленный с памятью файл, имеющий указанный режим доступа из файла на диске.

public:
 static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::String ^ path, System::IO::FileMode mode);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode);
static member CreateFromFile : string * System.IO.FileMode -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (path As String, mode As FileMode) As MemoryMappedFile

Параметры

path
String

Путь к файлу для сопоставления.

mode
FileMode

Режим доступа; должно быть Open.

Возвращаемое значение

Сопоставленный с памятью файл с указанным режимом доступа.

Исключения

path является пустой строкой, содержит только пробелы или содержит один или несколько недопустимых символов, как определено методом GetInvalidFileNameChars() .

–или–

path ссылается на недопустимое устройство.

–или–

mode равно Append.

path равно null.

mode is Create, CreateNewor Truncate.

–или–

mode — и OpenOrCreate файл на диске не существует.

–или–

Произошла ошибка ввода-вывода.

path превышает максимальную длину, определенную операционной системой.

Вызывающий объект не имеет необходимых разрешений для файла.

Комментарии

Параметр mode относится к исходному файлу на диске. Значение перечисления можно использовать только Open для создания сопоставленного с памятью файла из исходного файла на диске.

См. также раздел

Применяется к

CreateFromFile(String, FileMode, String)

Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs

Создает сопоставленный с памятью файл с указанным режимом доступа и именем из файла на диске.

public:
 static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::String ^ path, System::IO::FileMode mode, System::String ^ mapName);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string? mapName);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string mapName);
static member CreateFromFile : string * System.IO.FileMode * string -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (path As String, mode As FileMode, mapName As String) As MemoryMappedFile

Параметры

path
String

Путь к файлу для сопоставления.

mode
FileMode

Режим доступа; должно быть Open.

mapName
String

Имя, назначаемое сопоставленным с памятью файлу или null для общего доступа между MemoryMappedFile процессами.

Возвращаемое значение

Сопоставленный с памятью файл с указанным именем и режимом доступа.

Исключения

path является пустой строкой, содержит только пробелы или содержит один или несколько недопустимых символов, как определено методом GetInvalidFileNameChars() .

–или–

path ссылается на недопустимое устройство.

–или–

mapName — пустая строка.

–или–

mode равно Append.

path равно null.

mode is Create, CreateNewor Truncate.

–или–

mode — и OpenOrCreate файл на диске не существует.

–или–

Произошла ошибка ввода-вывода.

path превышает максимальную длину, определенную операционной системой.

Вызывающий объект не имеет необходимых разрешений для файла.

Комментарии

Параметр mode относится к исходному файлу на диске. Значение перечисления можно использовать только Open для создания сопоставленного с памятью файла из исходного файла на диске.

Применяется к

CreateFromFile(String, FileMode, String, Int64)

Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs

Создает сопоставленный с памятью файл с указанным режимом доступа, именем и емкостью из файла на диске.

public:
 static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::String ^ path, System::IO::FileMode mode, System::String ^ mapName, long capacity);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string? mapName, long capacity);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string mapName, long capacity);
static member CreateFromFile : string * System.IO.FileMode * string * int64 -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (path As String, mode As FileMode, mapName As String, capacity As Long) As MemoryMappedFile

Параметры

path
String

Путь к файлу для сопоставления.

mode
FileMode

Режим доступа; может быть любым из значений FileMode перечисления, кроме Append.

mapName
String

Имя, назначаемое сопоставленным с памятью файлу или null для общего доступа между MemoryMappedFile процессами.

capacity
Int64

Максимальный размер в байтах для выделения сопоставленного с памятью файла. Укажите 0, чтобы задать емкость для размера файла на диске.

Возвращаемое значение

Сопоставленный с памятью файл с указанными характеристиками.

Исключения

path является пустой строкой, содержит только пробелы или содержит один или несколько недопустимых символов, как определено методом GetInvalidFileNameChars() .

–или–

path ссылается на недопустимое устройство.

–или–

mapName — пустая строка.

–или–

mode равно Append.

path равно null.

capacity больше размера логического адресного пространства.

–или–

capacity меньше нуля.

–или–

capacity меньше размера файла (но не нуля).

–или–

capacity равно нулю, а размер файла на диске также равен нулю.

Произошла ошибка ввода-вывода.

path превышает максимальную длину, определенную операционной системой.

Вызывающий объект не имеет необходимых разрешений для файла.

Комментарии

Параметр mode относится к исходному файлу на диске.

Если capacity размер файла на диске превышает размер, файл на диске увеличивается, чтобы соответствовать указанной емкости, даже если данные не записываются в сопоставленный с памятью файл. Чтобы предотвратить это, укажите 0 (ноль) для емкости по умолчанию, которая внутренне устанавливает capacity размер файла на диске.

Применяется к

CreateFromFile(String, FileMode, String, Int64, MemoryMappedFileAccess)

Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs

Создает сопоставленный с памятью файл с указанным режимом доступа, именем, емкостью и типом доступа из файла на диске.

public:
 static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::String ^ path, System::IO::FileMode mode, System::String ^ mapName, long capacity, System::IO::MemoryMappedFiles::MemoryMappedFileAccess access);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string? mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access);
[System.Security.SecurityCritical]
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(string path, System.IO.FileMode mode, string mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access);
static member CreateFromFile : string * System.IO.FileMode * string * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess -> System.IO.MemoryMappedFiles.MemoryMappedFile
[<System.Security.SecurityCritical>]
static member CreateFromFile : string * System.IO.FileMode * string * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (path As String, mode As FileMode, mapName As String, capacity As Long, access As MemoryMappedFileAccess) As MemoryMappedFile

Параметры

path
String

Путь к файлу для сопоставления.

mode
FileMode

Режим доступа; может быть любым из значений FileMode перечисления, кроме Append.

mapName
String

Имя, назначаемое сопоставленным с памятью файлу или null для общего доступа между MemoryMappedFile процессами.

capacity
Int64

Максимальный размер в байтах для выделения сопоставленного с памятью файла. Укажите 0, чтобы задать емкость для размера файла на диске.

access
MemoryMappedFileAccess

Одно из значений перечисления, указывающее тип доступа, разрешенный для сопоставленного с памятью файла.

Возвращаемое значение

Сопоставленный с памятью файл с указанными характеристиками.

Атрибуты

Исключения

mapName — пустая строка.

–или–

access не является допустимым значением.

–или–

path указывает пустой файл.

–или–

access указывается как Read и емкость больше размера файла, указанного pathв файле.

–или–

mode равно Append.

path равно null.

capacity больше размера логического адресного пространства.

–или–

capacity меньше нуля.

–или–

capacity меньше размера файла (но не нуля).

–или–

capacity равно нулю, а размер файла на диске также равен нулю.

–или–

access не является определенным MemoryMappedFileAccess значением.

–или–

Размер файла, указанного в path файле, больше capacity.

–или–

Произошла ошибка ввода-вывода.

path превышает максимальную длину, определенную операционной системой.

Вызывающий объект не имеет необходимых разрешений для файла.

Комментарии

Параметр mode относится к исходному файлу на диске.

Если capacity размер файла на диске превышает размер, файл на диске увеличивается, чтобы соответствовать указанной емкости, даже если данные не записываются в сопоставленный с памятью файл. Чтобы предотвратить это, укажите 0 (ноль) для емкости по умолчанию, которая внутренне устанавливает capacity размер файла на диске.

См. также раздел

Применяется к

CreateFromFile(SafeFileHandle, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean)

Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs

Создает сопоставленный с памятью файл из существующего файла с помощью SafeFileHandle указанного режима доступа, имени, наследимости и емкости.

public:
 static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(Microsoft::Win32::SafeHandles::SafeFileHandle ^ fileHandle, System::String ^ mapName, long capacity, System::IO::MemoryMappedFiles::MemoryMappedFileAccess access, System::IO::HandleInheritability inheritability, bool leaveOpen);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(Microsoft.Win32.SafeHandles.SafeFileHandle fileHandle, string? mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access, System.IO.HandleInheritability inheritability, bool leaveOpen);
static member CreateFromFile : Microsoft.Win32.SafeHandles.SafeFileHandle * string * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess * System.IO.HandleInheritability * bool -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (fileHandle As SafeFileHandle, mapName As String, capacity As Long, access As MemoryMappedFileAccess, inheritability As HandleInheritability, leaveOpen As Boolean) As MemoryMappedFile

Параметры

fileHandle
SafeFileHandle

В SafeFileHandle существующий файл. Вызывающий объект отвечает за удаление fileHandle , если leaveOpen он ( true в противном случае автоматически удаляется MemoryMappedFile).

mapName
String

Имя, назначаемое сопоставленным с памятью файлу или null для общего доступа между MemoryMappedFile процессами.

capacity
Int64

Максимальный размер в байтах для выделения сопоставленного с памятью файла. Укажите значение 0, чтобы задать емкость для размера файла.

access
MemoryMappedFileAccess

Одно из значений перечисления, указывающее тип доступа, разрешенный для сопоставленного с памятью файла.

Этот параметр не может быть задан.Write

inheritability
HandleInheritability

Одно из значений перечисления, указывающее, можно ли наследовать дескриптор сопоставленного с памятью файла дочерним процессом. Значение по умолчанию — None.

leaveOpen
Boolean

Значение, указывающее, следует ли закрыть дескриптор исходного файла при MemoryMappedFile удалении.

Возвращаемое значение

Сопоставленный с памятью файл с указанными характеристиками.

Исключения

mapName имеет null или пустую строку.

–или–

capacity и длина файла равна нулю.

–или–

access имеет значение Write, которое не допускается.

–или–

access имеет значение Read и capacity больше длины файла.

fileHandle равно null.

capacity меньше нуля.

–или–

capacity меньше размера файла.

–или–

access не является допустимым MemoryMappedFileAccess значением перечисления.

–или–

inheritability не является допустимым HandleInheritability значением перечисления.

Применяется к

CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean)

Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs
Исходный код:
MemoryMappedFile.cs

Создает сопоставленный с памятью файл из существующего файла с указанным режимом доступа, именем, наследованием и емкостью.

public:
 static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::IO::FileStream ^ fileStream, System::String ^ mapName, long capacity, System::IO::MemoryMappedFiles::MemoryMappedFileAccess access, System::IO::HandleInheritability inheritability, bool leaveOpen);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(System.IO.FileStream fileStream, string? mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access, System.IO.HandleInheritability inheritability, bool leaveOpen);
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(System.IO.FileStream fileStream, string mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access, System.IO.HandleInheritability inheritability, bool leaveOpen);
static member CreateFromFile : System.IO.FileStream * string * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess * System.IO.HandleInheritability * bool -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (fileStream As FileStream, mapName As String, capacity As Long, access As MemoryMappedFileAccess, inheritability As HandleInheritability, leaveOpen As Boolean) As MemoryMappedFile

Параметры

fileStream
FileStream

Поток файлов существующего файла.

mapName
String

Имя, назначаемое сопоставленным с памятью файлу или null для общего доступа между MemoryMappedFile процессами.

capacity
Int64

Максимальный размер в байтах для выделения сопоставленного с памятью файла. Укажите значение 0, чтобы задать емкость для размера filestream.

access
MemoryMappedFileAccess

Одно из значений перечисления, указывающее тип доступа, разрешенный для сопоставленного с памятью файла.

Этот параметр не может быть задан.Write

inheritability
HandleInheritability

Одно из значений перечисления, указывающее, можно ли наследовать дескриптор сопоставленного с памятью файла дочерним процессом. Значение по умолчанию — None.

leaveOpen
Boolean

Значение, указывающее, следует ли закрыть исходный файловый поток при MemoryMappedFile удалении.

Возвращаемое значение

Сопоставленный с памятью файл с указанными характеристиками.

Исключения

mapName имеет null или пустую строку.

–или–

capacity и длина файла равна нулю.

–или–

access имеет Write значение или Write значение перечисления, которое не допускается.

–или–

access имеет значение Read и capacity больше длины filestream.

fileStream равно null.

capacity меньше нуля.

–или–

capacity меньше размера файла.

–или–

access не является допустимым MemoryMappedFileAccess значением перечисления.

–или–

inheritability не является допустимым HandleInheritability значением перечисления.

Применяется к

CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, MemoryMappedFileSecurity, HandleInheritability, Boolean)

Создает сопоставленный с памятью файл с указанным именем, емкостью, типом доступа, разрешениями безопасности, наследованием и требованием к удалению из файла на диске.

public:
 static System::IO::MemoryMappedFiles::MemoryMappedFile ^ CreateFromFile(System::IO::FileStream ^ fileStream, System::String ^ mapName, long capacity, System::IO::MemoryMappedFiles::MemoryMappedFileAccess access, System::IO::MemoryMappedFiles::MemoryMappedFileSecurity ^ memoryMappedFileSecurity, System::IO::HandleInheritability inheritability, bool leaveOpen);
[System.Security.SecurityCritical]
public static System.IO.MemoryMappedFiles.MemoryMappedFile CreateFromFile(System.IO.FileStream fileStream, string mapName, long capacity, System.IO.MemoryMappedFiles.MemoryMappedFileAccess access, System.IO.MemoryMappedFiles.MemoryMappedFileSecurity memoryMappedFileSecurity, System.IO.HandleInheritability inheritability, bool leaveOpen);
[<System.Security.SecurityCritical>]
static member CreateFromFile : System.IO.FileStream * string * int64 * System.IO.MemoryMappedFiles.MemoryMappedFileAccess * System.IO.MemoryMappedFiles.MemoryMappedFileSecurity * System.IO.HandleInheritability * bool -> System.IO.MemoryMappedFiles.MemoryMappedFile
Public Shared Function CreateFromFile (fileStream As FileStream, mapName As String, capacity As Long, access As MemoryMappedFileAccess, memoryMappedFileSecurity As MemoryMappedFileSecurity, inheritability As HandleInheritability, leaveOpen As Boolean) As MemoryMappedFile

Параметры

fileStream
FileStream

Файл fileStream для сопоставления.

mapName
String

Имя, назначаемое сопоставленным с памятью файлу или null для общего доступа между MemoryMappedFile процессами.

capacity
Int64

Максимальный размер в байтах для выделения сопоставленного с памятью файла. Укажите 0, чтобы задать емкость для размера файла на диске.

access
MemoryMappedFileAccess

Одно из значений перечисления, указывающее тип доступа, разрешенный для сопоставленного с памятью файла.

Этот параметр не может быть задан.Write

memoryMappedFileSecurity
MemoryMappedFileSecurity

Разрешения, которые можно предоставить для доступа к файлам и операций с файлами, сопоставленными с памятью.

Этот параметр может иметь значение null.

inheritability
HandleInheritability

Одно из значений перечисления, указывающее, можно ли наследовать дескриптор сопоставленного с памятью файла дочерним процессом. Значение по умолчанию — None.

leaveOpen
Boolean

Значение />, чтобы не удалить после закрытия; для удаления.

Возвращаемое значение

Сопоставленный с памятью файл с указанными характеристиками.

Атрибуты

Исключения

mapName — пустая строка.

–или–

capacity и длина файла равна нулю.

–или–

access имеет Read значение или Write значение перечисления, которое не допускается.

fileStream равно null.

capacity меньше нуля.

–или–

capacity меньше размера файла.

–или–

access не является допустимым MemoryMappedFileAccess значением перечисления.

–или–

inheritability не является допустимым HandleInheritability значением перечисления.

fileStream был закрыт.

access задано значение ReadWrite , если fileStreamдля доступа задано Read значение или Write.

mapName уже существует.

Комментарии

Если capacity размер файла на диске превышает размер, файл на диске увеличивается, чтобы соответствовать указанной емкости, даже если данные не записываются в сопоставленный с памятью файл. Чтобы предотвратить это, укажите 0 (ноль) для емкости по умолчанию, которая внутренне устанавливает capacity размер файла на диске.

См. также раздел

Применяется к