|
| slab_allocator (double growth_factor, uint64_t limit, uint64_t max_object_size) |
|
| slab_allocator (double growth_factor, uint64_t limit, uint64_t max_object_size, std::function< void(Item &item_ref)> erase_func) |
|
template<typename... Args> |
Item * | create (const size_t size, Args &&... args) |
|
void | lock_item (Item *item) |
|
void | unlock_item (Item *item) |
|
void | free (Item *item) |
|
void | touch (Item *item) |
|
void | print_slab_classes () |
|
size_t | class_size (const size_t size) |
|
◆ class_size()
Helper function: Useful for getting a slab class' chunk size from a size parameter.
◆ create()
template<typename Item >
template<typename... Args>
Create an item from a given slab class based on requested size.
◆ free()
Free an item back to its original slab class.
◆ print_slab_classes()
Helper function: Print all available slab classes and their respective properties.
◆ touch()
Update item position in the LRU of its slab class.
The documentation for this class was generated from the following file: