dotnet-core/release-notes/1.0/1.0.0-api/1.0.0-api_System.IO.MemoryMappedFiles.md
2017-07-05 14:24:38 -07:00

73 lines
3.9 KiB
Markdown

# System.IO.MemoryMappedFiles
``` diff
+namespace System.IO.MemoryMappedFiles {
+ public class MemoryMappedFile : IDisposable {
+ public SafeMemoryMappedFileHandle SafeMemoryMappedFileHandle { get; }
+ public static MemoryMappedFile CreateFromFile(FileStream fileStream, string mapName, long capacity, MemoryMappedFileAccess access, HandleInheritability inheritability, bool leaveOpen);
+ public static MemoryMappedFile CreateFromFile(string path);
+ public static MemoryMappedFile CreateFromFile(string path, FileMode mode);
+ public static MemoryMappedFile CreateFromFile(string path, FileMode mode, string mapName);
+ public static MemoryMappedFile CreateFromFile(string path, FileMode mode, string mapName, long capacity);
+ public static MemoryMappedFile CreateFromFile(string path, FileMode mode, string mapName, long capacity, MemoryMappedFileAccess access);
+ public static MemoryMappedFile CreateNew(string mapName, long capacity);
+ public static MemoryMappedFile CreateNew(string mapName, long capacity, MemoryMappedFileAccess access);
+ public static MemoryMappedFile CreateNew(string mapName, long capacity, MemoryMappedFileAccess access, MemoryMappedFileOptions options, HandleInheritability inheritability);
+ public static MemoryMappedFile CreateOrOpen(string mapName, long capacity);
+ public static MemoryMappedFile CreateOrOpen(string mapName, long capacity, MemoryMappedFileAccess access);
+ public static MemoryMappedFile CreateOrOpen(string mapName, long capacity, MemoryMappedFileAccess access, MemoryMappedFileOptions options, HandleInheritability inheritability);
+ public MemoryMappedViewAccessor CreateViewAccessor();
+ public MemoryMappedViewAccessor CreateViewAccessor(long offset, long size);
+ public MemoryMappedViewAccessor CreateViewAccessor(long offset, long size, MemoryMappedFileAccess access);
+ public MemoryMappedViewStream CreateViewStream();
+ public MemoryMappedViewStream CreateViewStream(long offset, long size);
+ public MemoryMappedViewStream CreateViewStream(long offset, long size, MemoryMappedFileAccess access);
+ public void Dispose();
+ protected virtual void Dispose(bool disposing);
+ public static MemoryMappedFile OpenExisting(string mapName);
+ public static MemoryMappedFile OpenExisting(string mapName, MemoryMappedFileRights desiredAccessRights);
+ public static MemoryMappedFile OpenExisting(string mapName, MemoryMappedFileRights desiredAccessRights, HandleInheritability inheritability);
+ }
+ public enum MemoryMappedFileAccess {
+ CopyOnWrite = 3,
+ Read = 1,
+ ReadExecute = 4,
+ ReadWrite = 0,
+ ReadWriteExecute = 5,
+ Write = 2,
+ }
+ public enum MemoryMappedFileOptions {
+ DelayAllocatePages = 67108864,
+ None = 0,
+ }
+ public enum MemoryMappedFileRights {
+ AccessSystemSecurity = 16777216,
+ ChangePermissions = 262144,
+ CopyOnWrite = 1,
+ Delete = 65536,
+ Execute = 8,
+ FullControl = 983055,
+ Read = 4,
+ ReadExecute = 12,
+ ReadPermissions = 131072,
+ ReadWrite = 6,
+ ReadWriteExecute = 14,
+ TakeOwnership = 524288,
+ Write = 2,
+ }
+ public sealed class MemoryMappedViewAccessor : UnmanagedMemoryAccessor {
+ public long PointerOffset { get; }
+ public SafeMemoryMappedViewHandle SafeMemoryMappedViewHandle { get; }
+ protected override void Dispose(bool disposing);
+ public void Flush();
+ }
+ public sealed class MemoryMappedViewStream : UnmanagedMemoryStream {
+ public long PointerOffset { get; }
+ public SafeMemoryMappedViewHandle SafeMemoryMappedViewHandle { get; }
+ protected override void Dispose(bool disposing);
+ public override void Flush();
+ public override void SetLength(long value);
+ }
+}
```