Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
a local clone.
std.experimental.allocator.mmap_allocator
- struct
MmapAllocator
; - Allocator (currently defined only for Posix and Windows) using mmap and munmap directly (or their Windows equivalents). There is no additional structure: each call to allocate(s) issues a call to mmap(null, s, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0), and each call to deallocate(b) issues munmap(b.ptr, b.length). So
MmapAllocator
is usually intended for allocating large chunks to be managed by fine-granular allocators.- static shared const MmapAllocator
instance
; - The one shared instance.
- enum size_t
alignment
; - Alignment is page-size and hardcoded to 4096 (even though on certain systems it could be larger).
- shared const pure nothrow @nogc @safe void[]
allocate
(size_tbytes
);
shared const pure nothrow @nogc booldeallocate
(void[]b
); - Allocator API.
Copyright © 1999-2024 by the D Language Foundation | Page generated by
Ddoc on Wed Dec 18 08:54:09 2024