英語版
このページの英語版を見る

std.experimental.allocator.mmap_allocator

struct MmapAllocator;
アロケータ(現在はPosixとWindows用にのみ定義されている)は mmapmunmapを直接使う。追加構造はない。 allocate(s)mmap(null, s, PROT_READ | PROT_WRITE, MAP_PRIVATE | MAP_ANONYMOUS, -1, 0), を発行し、deallocate(b) への各コールはmunmap(b.ptr, b.length) を発行する。 したがって MmapAllocatorは通常、細かい粒度のアロケータで管理される大きなチャンクを割り当てるためのものである。 を割り当てるためのものである。
static shared const MmapAllocator instance;
共有インスタンスは1つである。
enum size_t alignment;
アラインメントはページサイズで、4096にハードコードされている(システムによってはもっと大きくなることもある)。 にハードコードされている(システムによってはもっと大きくなることもある)。
shared const pure nothrow @nogc @safe void[] allocate(size_t bytes);

shared const pure nothrow @nogc bool deallocate(void[] b);
アロケータAPI。