MemoryMappedFile.CreateFromFile Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Crea un archivo asignado a la memoria a partir de un archivo existente.
Sobrecargas
CreateFromFile(String) |
Crea un archivo asignado a la memoria a partir de un archivo de disco. |
CreateFromFile(String, FileMode) |
Crea un archivo asignado a la memoria que tiene el modo de acceso especificado de un archivo de disco. |
CreateFromFile(String, FileMode, String) |
Crea un archivo asignado a la memoria que tiene el modo de acceso y el nombre especificados de un archivo de disco. |
CreateFromFile(String, FileMode, String, Int64) |
Crea un archivo asignado a la memoria que tiene el modo de acceso, el nombre y la capacidad especificados de un archivo de disco. |
CreateFromFile(String, FileMode, String, Int64, MemoryMappedFileAccess) |
Crea un archivo asignado a la memoria que tiene el modo de acceso, el nombre, la capacidad y el tipo de acceso especificados de un archivo de disco. |
CreateFromFile(SafeFileHandle, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean) |
Crea un archivo asignado a memoria a partir de un archivo existente mediante y SafeFileHandle el modo de acceso, el nombre, la heredera y la capacidad especificados. |
CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean) |
Crea un archivo asignado a la memoria a partir de un archivo existente con el modo de acceso, el nombre, la cualidad de heredable y la capacidad que se especifiquen. |
CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, MemoryMappedFileSecurity, HandleInheritability, Boolean) |
Crea un archivo asignado a la memoria con el nombre, la capacidad, el tipo de acceso, los permisos de seguridad, la herencia y el requisito de eliminación especificados de un archivo de disco. |
CreateFromFile(String)
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
Crea un archivo asignado a la memoria a partir de un archivo de disco.
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
Parámetros
- path
- String
Ruta de acceso al archivo que se va asignar.
Devoluciones
Archivo asignado a la memoria.
Excepciones
path
es una cadena vacía, que solo contiene espacios en blanco, o bien, contiene uno o varios de los caracteres no válidos definidos por el método GetInvalidFileNameChars().
O bien
path
hace referencia a un dispositivo no válido.
path
es null
.
Error de E/S.
path
supera la longitud máxima definida por el sistema operativo.
El llamador no tiene los permisos necesarios para el archivo.
Ejemplos
En el ejemplo siguiente se usa el CreateFromFile método para crear un archivo asignado a memoria y, a continuación, se crea una vista asignada a memoria en una parte de un archivo extremadamente grande.
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
Consulte también
Se aplica a
CreateFromFile(String, FileMode)
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
Crea un archivo asignado a la memoria que tiene el modo de acceso especificado de un archivo de disco.
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
Parámetros
- path
- String
Ruta de acceso al archivo que se va asignar.
Devoluciones
Archivo asignado a la memoria con el modo de acceso especificado.
Excepciones
path
es una cadena vacía, que solo contiene espacios en blanco, o bien, contiene uno o varios de los caracteres no válidos definidos por el método GetInvalidFileNameChars().
O bien
path
hace referencia a un dispositivo no válido.
o bien
mode
es Append.
path
es null
.
mode
es Create, CreateNew o Truncate.
O bien
mode
es OpenOrCreate y el archivo del disco no existe.
o bien
Error de E/S.
path
supera la longitud máxima definida por el sistema operativo.
El llamador no tiene los permisos necesarios para el archivo.
Comentarios
El mode
parámetro pertenece al archivo de origen en el disco. Solo puede usar el Open valor de enumeración para crear el archivo asignado a memoria desde el archivo de origen en el disco.
Consulte también
Se aplica a
CreateFromFile(String, FileMode, String)
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
Crea un archivo asignado a la memoria que tiene el modo de acceso y el nombre especificados de un archivo de disco.
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
Parámetros
- path
- String
Ruta de acceso al archivo que se va asignar.
- mapName
- String
Nombre para asignar al archivo asignado a la memoria o null
para un MemoryMappedFile que no tiene intención de compartir entre procesos.
Devoluciones
Archivo asignado a la memoria con el nombre y el modo de acceso especificados.
Excepciones
path
es una cadena vacía, que solo contiene espacios en blanco, o bien, contiene uno o varios de los caracteres no válidos definidos por el método GetInvalidFileNameChars().
O bien
path
hace referencia a un dispositivo no válido.
o bien
mapName
es una cadena vacía.
O bien
mode
es Append.
path
es null
.
mode
es Create, CreateNew o Truncate.
O bien
mode
es OpenOrCreate y el archivo del disco no existe.
o bien
Error de E/S.
path
supera la longitud máxima definida por el sistema operativo.
El llamador no tiene los permisos necesarios para el archivo.
Comentarios
El mode
parámetro pertenece al archivo de origen en el disco. Solo puede usar el Open valor de enumeración para crear el archivo asignado a memoria desde el archivo de origen en el disco.
Se aplica a
CreateFromFile(String, FileMode, String, Int64)
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
Crea un archivo asignado a la memoria que tiene el modo de acceso, el nombre y la capacidad especificados de un archivo de disco.
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
Parámetros
- path
- String
Ruta de acceso al archivo que se va asignar.
- mode
- FileMode
Modo de acceso: puede ser cualquiera de los valores de enumeración FileMode excepto Append.
- mapName
- String
Nombre para asignar al archivo asignado a la memoria o null
para un MemoryMappedFile que no tiene intención de compartir entre procesos.
- capacity
- Int64
Tamaño máximo, en bytes, que se va a asignar al archivo asignado a la memoria. Especifique 0 para establecer la capacidad en el tamaño del archivo de disco.
Devoluciones
Archivo asignado a la memoria que tiene las características especificadas.
Excepciones
path
es una cadena vacía, que solo contiene espacios en blanco, o bien, contiene uno o varios de los caracteres no válidos definidos por el método GetInvalidFileNameChars().
O bien
path
hace referencia a un dispositivo no válido.
o bien
mapName
es una cadena vacía.
O bien
mode
es Append.
path
es null
.
capacity
es mayor que el tamaño del espacio de direcciones lógico.
o bien
capacity
es menor que cero.
o bien
capacity
es menor que el tamaño de archivo (pero no es cero).
O bien
capacity
es cero y el tamaño del archivo en disco también es cero.
Error de E/S.
path
supera la longitud máxima definida por el sistema operativo.
El llamador no tiene los permisos necesarios para el archivo.
Comentarios
El mode
parámetro pertenece al archivo de origen en el disco.
Si capacity
es mayor que el tamaño del archivo en el disco, se aumenta el archivo en el disco para que coincida con la capacidad especificada aunque no se escriban datos en el archivo asignado a memoria. Para evitar que esto ocurra, especifique 0 (cero) para la capacidad predeterminada, que se establecerá capacity
internamente en el tamaño del archivo en el disco.
Se aplica a
CreateFromFile(String, FileMode, String, Int64, MemoryMappedFileAccess)
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
Crea un archivo asignado a la memoria que tiene el modo de acceso, el nombre, la capacidad y el tipo de acceso especificados de un archivo de disco.
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
Parámetros
- path
- String
Ruta de acceso al archivo que se va asignar.
- mode
- FileMode
Modo de acceso: puede ser cualquiera de los valores de enumeración FileMode excepto Append.
- mapName
- String
Nombre para asignar al archivo asignado a la memoria o null
para un MemoryMappedFile que no tiene intención de compartir entre procesos.
- capacity
- Int64
Tamaño máximo, en bytes, que se va a asignar al archivo asignado a la memoria. Especifique 0 para establecer la capacidad en el tamaño del archivo de disco.
- access
- MemoryMappedFileAccess
Uno de los valores de enumeración que especifica el tipo de acceso permitido para el archivo asignado a la memoria.
Devoluciones
Archivo asignado a la memoria que tiene las características especificadas.
- Atributos
Excepciones
mapName
es una cadena vacía.
o bien
access
no es un valor permitido.
O bien
path
especifica un archivo vacío.
O bien
access
se especifica como Read y la capacidad es mayor que el tamaño de archivo que indica path
.
o bien
mode
es Append.
path
es null
.
capacity
es mayor que el tamaño del espacio de direcciones lógico.
o bien
capacity
es menor que cero.
o bien
capacity
es menor que el tamaño de archivo (pero no es cero).
O bien
capacity
es cero y el tamaño del archivo en disco también es cero.
O bien
access
no es un valor definido de MemoryMappedFileAccess.
O bien
El tamaño del archivo que indica path
es mayor que capacity
.
path
supera la longitud máxima definida por el sistema operativo.
El llamador no tiene los permisos necesarios para el archivo.
Comentarios
El mode
parámetro pertenece al archivo de origen en el disco.
Si capacity
es mayor que el tamaño del archivo en el disco, se aumenta el archivo en el disco para que coincida con la capacidad especificada aunque no se escriban datos en el archivo asignado a memoria. Para evitar que esto ocurra, especifique 0 (cero) para la capacidad predeterminada, que se establecerá capacity
internamente en el tamaño del archivo en el disco.
Consulte también
Se aplica a
CreateFromFile(SafeFileHandle, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean)
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
Crea un archivo asignado a memoria a partir de un archivo existente mediante y SafeFileHandle el modo de acceso, el nombre, la heredera y la capacidad especificados.
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
Parámetros
- fileHandle
- SafeFileHandle
en SafeFileHandle el archivo existente. El autor de la llamada es responsable de eliminar fileHandle
cuando leaveOpen
es true
(de lo contrario, se elimina automáticamente mediante MemoryMappedFile).
- mapName
- String
Nombre para asignar al archivo asignado a la memoria o null
para un MemoryMappedFile que no tiene intención de compartir entre procesos.
- capacity
- Int64
Tamaño máximo, en bytes, que se va a asignar al archivo asignado a la memoria. Especifique 0 para establecer la capacidad en el tamaño del archivo.
- access
- MemoryMappedFileAccess
Uno de los valores de enumeración que especifica el tipo de acceso permitido para el archivo asignado a la memoria.
Este parámetro no puede establecerse en Write.
- inheritability
- HandleInheritability
Uno de los valores de enumeración que especifica si un proceso secundario puede heredar un identificador para el archivo asignado a la memoria. De manera predeterminada, es None.
- leaveOpen
- Boolean
Valor que indica si se va a cerrar el identificador de archivo de origen cuando se elimina .MemoryMappedFile
Devoluciones
Archivo asignado a la memoria que tiene las características especificadas.
Excepciones
mapName
es null
o una cadena vacía.
o bien
capacity
y la longitud del archivo son cero.
O bien
access
se establece en Write, que no se permite.
O bien
access
se establece en Read y capacity
es mayor que la longitud del archivo.
fileHandle
es null
.
capacity
es menor que cero.
o bien
capacity
es menor que el tamaño de archivo.
o bien
access
no es un valor de enumeración MemoryMappedFileAccess válido.
o bien
inheritability
no es un valor de enumeración HandleInheritability válido.
Se aplica a
CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean)
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
- Source:
- MemoryMappedFile.cs
Crea un archivo asignado a la memoria a partir de un archivo existente con el modo de acceso, el nombre, la cualidad de heredable y la capacidad que se especifiquen.
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
Parámetros
- fileStream
- FileStream
Flujo de archivo del archivo existente.
- mapName
- String
Nombre para asignar al archivo asignado a la memoria o null
para un MemoryMappedFile que no tiene intención de compartir entre procesos.
- capacity
- Int64
Tamaño máximo, en bytes, que se va a asignar al archivo asignado a la memoria. Especifique 0 para establecer la capacidad en el tamaño de filestream
.
- access
- MemoryMappedFileAccess
Uno de los valores de enumeración que especifica el tipo de acceso permitido para el archivo asignado a la memoria.
Este parámetro no puede establecerse en Write.
- inheritability
- HandleInheritability
Uno de los valores de enumeración que especifica si un proceso secundario puede heredar un identificador para el archivo asignado a la memoria. De manera predeterminada, es None.
- leaveOpen
- Boolean
Valor que indica si se va a cerrar la secuencia del archivo de origen cuando se elimine MemoryMappedFile.
Devoluciones
Archivo asignado a la memoria que tiene las características especificadas.
Excepciones
mapName
es null
o una cadena vacía.
o bien
capacity
y la longitud del archivo son cero.
O bien
access
se establece en el valor de enumeración Write o Write, que no está permitido.
O bien
access
se establece en Read y capacity
es mayor que la longitud de filestream
.
fileStream
es null
.
capacity
es menor que cero.
o bien
capacity
es menor que el tamaño de archivo.
o bien
access
no es un valor de enumeración MemoryMappedFileAccess válido.
o bien
inheritability
no es un valor de enumeración HandleInheritability válido.
Se aplica a
CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, MemoryMappedFileSecurity, HandleInheritability, Boolean)
Crea un archivo asignado a la memoria con el nombre, la capacidad, el tipo de acceso, los permisos de seguridad, la herencia y el requisito de eliminación especificados de un archivo de disco.
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
Parámetros
- fileStream
- FileStream
fileStream
para el archivo que se va a asignar.
- mapName
- String
Nombre para asignar al archivo asignado a la memoria o null
para un MemoryMappedFile que no tiene intención de compartir entre procesos.
- capacity
- Int64
Tamaño máximo, en bytes, que se va a asignar al archivo asignado a la memoria. Especifique 0 para establecer la capacidad en el tamaño del archivo de disco.
- access
- MemoryMappedFileAccess
Uno de los valores de enumeración que especifica el tipo de acceso permitido para el archivo asignado a la memoria.
Este parámetro no puede establecerse en Write.
- memoryMappedFileSecurity
- MemoryMappedFileSecurity
Permisos que se pueden conceder para el acceso a archivos y las operaciones en los archivos asignados a la memoria.
Este parámetro puede ser null
.
- inheritability
- HandleInheritability
Uno de los valores de enumeración que especifica si un proceso secundario puede heredar un identificador para el archivo asignado a la memoria. De manera predeterminada, es None.
- leaveOpen
- Boolean
Es true
para no eliminar fileStream
después de que se cierre el objeto MemoryMappedFile; es false
para eliminar fileStream
.
Devoluciones
Archivo asignado a la memoria que tiene las características especificadas.
- Atributos
Excepciones
mapName
es una cadena vacía.
o bien
capacity
y la longitud del archivo son cero.
O bien
access
se establece en el valor de enumeración Read o Write, que no se permite.
fileStream
es null
.
capacity
es menor que cero.
o bien
capacity
es menor que el tamaño de archivo.
o bien
access
no es un valor de enumeración MemoryMappedFileAccess válido.
o bien
inheritability
no es un valor de enumeración HandleInheritability válido.
Se cerró fileStream
.
mapName
ya existe.
Comentarios
Si capacity
es mayor que el tamaño del archivo en el disco, el archivo en el disco aumenta para que coincida con la capacidad especificada aunque no se escriban datos en el archivo asignado a memoria. Para evitar que esto ocurra, especifique 0 (cero) para la capacidad predeterminada, que se establecerá capacity
internamente en el tamaño del archivo en el disco.