MemoryMappedFile.CreateFromFile Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Membuat file yang dipetakan memori dari file yang ada.
Overload
CreateFromFile(String) |
Membuat file yang dipetakan memori dari file pada disk. |
CreateFromFile(String, FileMode) |
Membuat file yang dipetakan memori yang memiliki mode akses yang ditentukan dari file pada disk. |
CreateFromFile(String, FileMode, String) |
Membuat file yang dipetakan memori yang memiliki mode akses dan nama yang ditentukan dari file pada disk. |
CreateFromFile(String, FileMode, String, Int64) |
Membuat file yang dipetakan memori yang memiliki mode akses, nama, dan kapasitas yang ditentukan dari file pada disk. |
CreateFromFile(String, FileMode, String, Int64, MemoryMappedFileAccess) |
Membuat file yang dipetakan memori yang memiliki mode akses, nama, kapasitas, dan jenis akses yang ditentukan dari file pada disk. |
CreateFromFile(SafeFileHandle, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean) |
Membuat file yang dipetakan memori dari file yang ada menggunakan SafeFileHandle dan mode akses, nama, pewarisan, dan kapasitas yang ditentukan. |
CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean) |
Membuat file yang dipetakan memori dari file yang ada dengan mode akses, nama, warisan, dan kapasitas yang ditentukan. |
CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, MemoryMappedFileSecurity, HandleInheritability, Boolean) |
Membuat file yang dipetakan memori yang memiliki nama, kapasitas, jenis akses, izin keamanan, pewarisan, dan persyaratan pembuangan yang ditentukan dari file pada disk. |
CreateFromFile(String)
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
Membuat file yang dipetakan memori dari file pada disk.
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
Parameter
- path
- String
Jalur ke file yang akan dipetakan.
Mengembalikan
File yang dipetakan memori.
Pengecualian
path
adalah string kosong, hanya berisi spasi kosong, atau memiliki satu atau beberapa karakter yang tidak valid, seperti yang GetInvalidFileNameChars() didefinisikan oleh metode .
-atau-
path
mengacu pada perangkat yang tidak valid.
path
adalah null
.
Terjadi kesalahan I/O.
path
melebihi panjang maksimum yang ditentukan oleh sistem operasi.
Pemanggil tidak memiliki izin yang diperlukan untuk file tersebut.
Contoh
Contoh berikut menggunakan CreateFromFile metode untuk membuat file yang dipetakan memori, lalu membuat tampilan yang dipetakan memori ke sebagian file yang sangat besar.
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
Lihat juga
Berlaku untuk
CreateFromFile(String, FileMode)
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
Membuat file yang dipetakan memori yang memiliki mode akses yang ditentukan dari file pada disk.
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
Parameter
- path
- String
Jalur ke file yang akan dipetakan.
Mengembalikan
File yang dipetakan memori yang memiliki mode akses yang ditentukan.
Pengecualian
path
adalah string kosong, hanya berisi spasi kosong, atau memiliki satu atau beberapa karakter yang tidak valid, seperti yang GetInvalidFileNameChars() didefinisikan oleh metode .
-atau-
path
mengacu pada perangkat yang tidak valid.
-atau-
mode
adalah Append.
path
adalah null
.
mode
adalah Create, CreateNew, atau Truncate.
-atau-
mode
adalah OpenOrCreate dan file pada disk tidak ada.
-atau-
Terjadi kesalahan I/O.
path
melebihi panjang maksimum yang ditentukan oleh sistem operasi.
Pemanggil tidak memiliki izin yang diperlukan untuk file tersebut.
Keterangan
Parameter mode
berkaitan dengan file sumber pada disk. Anda hanya Open dapat menggunakan nilai enumerasi untuk membuat file yang dipetakan memori dari file sumber pada disk.
Lihat juga
Berlaku untuk
CreateFromFile(String, FileMode, String)
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
Membuat file yang dipetakan memori yang memiliki mode akses dan nama yang ditentukan dari file pada disk.
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
Parameter
- path
- String
Jalur ke file yang akan dipetakan.
- mapName
- String
Nama untuk ditetapkan ke file yang dipetakan memori, atau null
untuk MemoryMappedFile yang tidak ingin Anda bagikan di seluruh proses.
Mengembalikan
File yang dipetakan memori yang memiliki nama dan mode akses yang ditentukan.
Pengecualian
path
adalah string kosong, hanya berisi spasi kosong, atau memiliki satu atau beberapa karakter yang tidak valid, seperti yang GetInvalidFileNameChars() didefinisikan oleh metode .
-atau-
path
mengacu pada perangkat yang tidak valid.
-atau-
mapName
adalah string kosong.
-atau-
mode
adalah Append.
path
adalah null
.
mode
adalah Create, CreateNew, atau Truncate.
-atau-
mode
adalah OpenOrCreate dan file pada disk tidak ada.
-atau-
Terjadi kesalahan I/O.
path
melebihi panjang maksimum yang ditentukan oleh sistem operasi.
Pemanggil tidak memiliki izin yang diperlukan untuk file tersebut.
Keterangan
Parameter mode
berkaitan dengan file sumber pada disk. Anda hanya Open dapat menggunakan nilai enumerasi untuk membuat file yang dipetakan memori dari file sumber pada disk.
Berlaku untuk
CreateFromFile(String, FileMode, String, Int64)
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
Membuat file yang dipetakan memori yang memiliki mode akses, nama, dan kapasitas yang ditentukan dari file pada disk.
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
Parameter
- path
- String
Jalur ke file yang akan dipetakan.
- mapName
- String
Nama untuk ditetapkan ke file yang dipetakan memori, atau null
untuk MemoryMappedFile yang tidak ingin Anda bagikan di seluruh proses.
- capacity
- Int64
Ukuran maksimum, dalam byte, untuk mengalokasikan ke file yang dipetakan memori. Tentukan 0 untuk mengatur kapasitas ke ukuran file pada disk.
Mengembalikan
File yang dipetakan memori yang memiliki karakteristik yang ditentukan.
Pengecualian
path
adalah string kosong, hanya berisi spasi kosong, atau memiliki satu atau beberapa karakter yang tidak valid, seperti yang GetInvalidFileNameChars() didefinisikan oleh metode .
-atau-
path
mengacu pada perangkat yang tidak valid.
-atau-
mapName
adalah string kosong.
-atau-
mode
adalah Append.
path
adalah null
.
capacity
lebih besar dari ukuran ruang alamat logis.
-atau-
capacity
kurang dari nol.
-atau-
capacity
kurang dari ukuran file (tetapi bukan nol).
-atau-
capacity
adalah nol, dan ukuran file pada disk juga nol.
Terjadi kesalahan I/O.
path
melebihi panjang maksimum yang ditentukan oleh sistem operasi.
Pemanggil tidak memiliki izin yang diperlukan untuk file tersebut.
Keterangan
Parameter mode
berkaitan dengan file sumber pada disk.
Jika capacity
lebih besar dari ukuran file pada disk, file pada disk ditingkatkan agar sesuai dengan kapasitas yang ditentukan bahkan jika tidak ada data yang ditulis ke file yang dipetakan memori. Untuk mencegah hal ini terjadi, tentukan 0 (nol) untuk kapasitas default, yang secara internal akan diatur capacity
ke ukuran file pada disk.
Berlaku untuk
CreateFromFile(String, FileMode, String, Int64, MemoryMappedFileAccess)
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
Membuat file yang dipetakan memori yang memiliki mode akses, nama, kapasitas, dan jenis akses yang ditentukan dari file pada disk.
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
Parameter
- path
- String
Jalur ke file yang akan dipetakan.
- mapName
- String
Nama untuk ditetapkan ke file yang dipetakan memori, atau null
untuk MemoryMappedFile yang tidak ingin Anda bagikan di seluruh proses.
- capacity
- Int64
Ukuran maksimum, dalam byte, untuk mengalokasikan ke file yang dipetakan memori. Tentukan 0 untuk mengatur kapasitas ke ukuran file pada disk.
- access
- MemoryMappedFileAccess
Salah satu nilai enumerasi yang menentukan jenis akses yang diizinkan ke file yang dipetakan memori.
Mengembalikan
File yang dipetakan memori yang memiliki karakteristik yang ditentukan.
- Atribut
Pengecualian
mapName
adalah string kosong.
-atau-
access
bukan nilai yang diperbolehkan.
-atau-
path
menentukan file kosong.
-atau-
access
ditentukan sebagai Read dan kapasitas lebih besar dari ukuran file yang ditunjukkan oleh path
.
-atau-
mode
adalah Append.
path
adalah null
.
capacity
lebih besar dari ukuran ruang alamat logis.
-atau-
capacity
kurang dari nol.
-atau-
capacity
kurang dari ukuran file (tetapi bukan nol).
-atau-
capacity
adalah nol, dan ukuran file pada disk juga nol.
-atau-
access
bukan nilai yang ditentukan MemoryMappedFileAccess .
-atau-
Ukuran file yang ditunjukkan oleh path
lebih besar dari capacity
.
path
melebihi panjang maksimum yang ditentukan oleh sistem operasi.
Pemanggil tidak memiliki izin yang diperlukan untuk file tersebut.
Keterangan
Parameter mode
berkaitan dengan file sumber pada disk.
Jika capacity
lebih besar dari ukuran file pada disk, file pada disk ditingkatkan agar sesuai dengan kapasitas yang ditentukan bahkan jika tidak ada data yang ditulis ke file yang dipetakan memori. Untuk mencegah hal ini terjadi, tentukan 0 (nol) untuk kapasitas default, yang secara internal akan diatur capacity
ke ukuran file pada disk.
Lihat juga
Berlaku untuk
CreateFromFile(SafeFileHandle, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean)
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
Membuat file yang dipetakan memori dari file yang ada menggunakan SafeFileHandle dan mode akses, nama, pewarisan, dan kapasitas yang ditentukan.
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
Parameter
- fileHandle
- SafeFileHandle
ke SafeFileHandle file yang ada. Pemanggil bertanggung jawab untuk membuang fileHandle
kapan leaveOpen
( true
jika tidak, secara otomatis dibuang oleh MemoryMappedFile).
- mapName
- String
Nama untuk ditetapkan ke file yang dipetakan memori, atau null
untuk MemoryMappedFile yang tidak ingin Anda bagikan di seluruh proses.
- capacity
- Int64
Ukuran maksimum, dalam byte, untuk mengalokasikan ke file yang dipetakan memori. Tentukan 0 untuk mengatur kapasitas ke ukuran file.
- access
- MemoryMappedFileAccess
Salah satu nilai enumerasi yang menentukan jenis akses yang diizinkan ke file yang dipetakan memori.
Parameter ini tidak dapat diatur ke Write.
- inheritability
- HandleInheritability
Salah satu nilai enumerasi yang menentukan apakah handel ke file yang dipetakan memori dapat diwariskan oleh proses anak. Default adalah None.
- leaveOpen
- Boolean
Nilai yang menunjukkan apakah akan menutup handel file sumber saat MemoryMappedFile dibuang.
Mengembalikan
File yang dipetakan memori yang memiliki karakteristik yang ditentukan.
Pengecualian
mapName
adalah null
atau string kosong.
-atau-
capacity
dan panjang file adalah nol.
-atau-
access
diatur ke Write, yang tidak diizinkan.
-atau-
access
diatur ke Read dan capacity
lebih besar dari panjang file.
fileHandle
adalah null
.
capacity
kurang dari nol.
-atau-
capacity
kurang dari ukuran file.
-atau-
access
bukan nilai enumerasi yang valid MemoryMappedFileAccess .
-atau-
inheritability
bukan nilai enumerasi yang valid HandleInheritability .
Berlaku untuk
CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, HandleInheritability, Boolean)
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
- Sumber:
- MemoryMappedFile.cs
Membuat file yang dipetakan memori dari file yang ada dengan mode akses, nama, warisan, dan kapasitas yang ditentukan.
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
Parameter
- fileStream
- FileStream
Aliran file dari file yang ada.
- mapName
- String
Nama untuk ditetapkan ke file yang dipetakan memori, atau null
untuk MemoryMappedFile yang tidak ingin Anda bagikan di seluruh proses.
- capacity
- Int64
Ukuran maksimum, dalam byte, untuk mengalokasikan ke file yang dipetakan memori. Tentukan 0 untuk mengatur kapasitas ke ukuran filestream
.
- access
- MemoryMappedFileAccess
Salah satu nilai enumerasi yang menentukan jenis akses yang diizinkan ke file yang dipetakan memori.
Parameter ini tidak dapat diatur ke Write.
- inheritability
- HandleInheritability
Salah satu nilai enumerasi yang menentukan apakah handel ke file yang dipetakan memori dapat diwariskan oleh proses anak. Default adalah None.
- leaveOpen
- Boolean
Nilai yang menunjukkan apakah akan menutup aliran file sumber saat MemoryMappedFile dibuang.
Mengembalikan
File yang dipetakan memori yang memiliki karakteristik yang ditentukan.
Pengecualian
mapName
adalah null
atau string kosong.
-atau-
capacity
dan panjang file adalah nol.
-atau-
access
diatur ke Write atau Write nilai enumerasi, yang tidak diizinkan.
-atau-
access
diatur ke Read dan capacity
lebih besar dari panjang filestream
.
fileStream
adalah null
.
capacity
kurang dari nol.
-atau-
capacity
kurang dari ukuran file.
-atau-
access
bukan nilai enumerasi yang valid MemoryMappedFileAccess .
-atau-
inheritability
bukan nilai enumerasi yang valid HandleInheritability .
Berlaku untuk
CreateFromFile(FileStream, String, Int64, MemoryMappedFileAccess, MemoryMappedFileSecurity, HandleInheritability, Boolean)
Membuat file yang dipetakan memori yang memiliki nama, kapasitas, jenis akses, izin keamanan, pewarisan, dan persyaratan pembuangan yang ditentukan dari file pada disk.
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
Parameter
- fileStream
- FileStream
ke fileStream
file yang akan dipetakan.
- mapName
- String
Nama untuk ditetapkan ke file yang dipetakan memori, atau null
untuk MemoryMappedFile yang tidak ingin Anda bagikan di seluruh proses.
- capacity
- Int64
Ukuran maksimum, dalam byte, untuk mengalokasikan ke file yang dipetakan memori. Tentukan 0 untuk mengatur kapasitas ke ukuran file pada disk.
- access
- MemoryMappedFileAccess
Salah satu nilai enumerasi yang menentukan jenis akses yang diizinkan ke file yang dipetakan memori.
Parameter ini tidak dapat diatur ke Write.
- memoryMappedFileSecurity
- MemoryMappedFileSecurity
Izin yang dapat diberikan untuk akses file dan operasi pada file yang dipetakan memori.
Parameter ini dapat berupa null
.
- inheritability
- HandleInheritability
Salah satu nilai enumerasi yang menentukan apakah handel ke file yang dipetakan memori dapat diwariskan oleh proses anak. Default adalah None.
- leaveOpen
- Boolean
true
untuk tidak membuang fileStream
setelah ditutup; false
untuk membuang fileStream
MemoryMappedFile .
Mengembalikan
File yang dipetakan memori yang memiliki karakteristik yang ditentukan.
- Atribut
Pengecualian
mapName
adalah string kosong.
-atau-
capacity
dan panjang file adalah nol.
-atau-
access
diatur ke Read nilai atau Write enumerasi, yang tidak diizinkan.
fileStream
adalah null
.
capacity
kurang dari nol.
-atau-
capacity
kurang dari ukuran file.
-atau-
access
bukan nilai enumerasi yang valid MemoryMappedFileAccess .
-atau-
inheritability
bukan nilai enumerasi yang valid HandleInheritability .
fileStream
ditutup.
mapName
sudah ada.
Keterangan
Jika capacity
lebih besar dari ukuran file pada disk, file pada disk ditingkatkan agar sesuai dengan kapasitas yang ditentukan bahkan jika tidak ada data yang ditulis ke file yang dipetakan memori. Untuk mencegah hal ini terjadi, tentukan 0 (nol) untuk kapasitas default, yang secara internal akan diatur capacity
ke ukuran file pada disk.