PMDK C++ bindings  1.8.1
This is the C++ bindings documentation for PMDK's libpmemobj.
Classes | Namespaces | Macros
temp_value.hpp File Reference

temp_value template class for caching objects. More...

#include <libpmemobj++/make_persistent.hpp>

Go to the source code of this file.

Classes

struct  pmem::detail::temp_value< T, NoExcept, typename std::enable_if< NoExcept &&(sizeof(T)< LIBPMEMOBJ_CPP_MAX_STACK_ALLOC_SIZE)>::type >
 Specialization for non-throwing constructors and objects smaller than LIBPMEMOBJ_CPP_MAX_STACK_ALLOC_SIZE bytes. More...
 
struct  pmem::detail::temp_value< T, NoExcept, typename std::enable_if<!NoExcept||(sizeof(T) >=LIBPMEMOBJ_CPP_MAX_STACK_ALLOC_SIZE)>::type >
 Specialization for throwing constructors or objects greater than or equal to LIBPMEMOBJ_CPP_MAX_STACK_ALLOC_SIZE bytes. More...
 

Namespaces

 pmem
 A persistent version of concurrent hash map implementation Ref: https://arxiv.org/abs/1509.02235.
 

Macros

#define LIBPMEMOBJ_CPP_MAX_STACK_ALLOC_SIZE   64 * (1 << 10)
 Suggested maximum size of stack allocation for caching objects is 64kB. More...
 

Detailed Description

temp_value template class for caching objects.

Macro Definition Documentation

◆ LIBPMEMOBJ_CPP_MAX_STACK_ALLOC_SIZE

#define LIBPMEMOBJ_CPP_MAX_STACK_ALLOC_SIZE   64 * (1 << 10)

Suggested maximum size of stack allocation for caching objects is 64kB.

It can be changed by user by setting LIBPMEMOBJ_CPP_MAX_STACK_ALLOC_SIZE to custom value.