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
Путь к файлу для сопоставления.
Возвращаемое значение
Сопоставленный с памятью файл с указанным режимом доступа.
Исключения
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
Путь к файлу для сопоставления.
- 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
Путь к файлу для сопоставления.
- 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
Путь к файлу для сопоставления.
- 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 был закрыт.
mapName уже существует.
Комментарии
Если capacity размер файла на диске превышает размер, файл на диске увеличивается, чтобы соответствовать указанной емкости, даже если данные не записываются в сопоставленный с памятью файл. Чтобы предотвратить это, укажите 0 (ноль) для емкости по умолчанию, которая внутренне устанавливает capacity размер файла на диске.