33#include <boost/thread/mutex.hpp>
54 static boost::mutex &
mutex();
55 static std::map<size_t, unsigned int> &
map();
86 template <
class T,
size_t N>
static size_t page_size
Definition mlocker.h:51
static size_t get_num_locked_objects()
Definition mlocker.cpp:168
void * ptr
Definition mlocker.h:59
static boost::mutex & mutex()
Definition mlocker.cpp:97
static size_t get_num_locked_pages()
Definition mlocker.cpp:162
static void lock(void *ptr, size_t len)
Definition mlocker.cpp:127
static void unlock(void *ptr, size_t len)
Definition mlocker.cpp:145
~mlocker()
Definition mlocker.cpp:121
size_t len
Definition mlocker.h:60
static size_t num_locked_objects
Definition mlocker.h:52
static std::map< size_t, unsigned int > & map()
Definition mlocker.cpp:102
static void unlock_page(size_t page)
Definition mlocker.cpp:187
static size_t get_page_size()
Definition mlocker.cpp:108
static void lock_page(size_t page)
Definition mlocker.cpp:174
mlocker(void *ptr, size_t len)
Definition mlocker.cpp:116
TODO: (mj-xmr) This will be reduced in an another PR.
Definition byte_slice.h:40
T & unwrap(mlocked< T > &src)
Definition mlocker.h:81
mlocked< std::array< T, N > > mlocked_arr
Definition mlocker.h:87
mlocked(const mlocked< T > &mt)
Definition mlocker.h:73
mlocked< T > & operator=(const mlocked< T > &mt)
Definition mlocker.h:76
mlocked(const T &t)
Definition mlocker.h:72
~mlocked()
Definition mlocker.h:77
mlocked()
Definition mlocker.h:71
T type
Definition mlocker.h:69
mlocked(const T &&t)
Definition mlocker.h:74
mlocked(const mlocked< T > &&mt)
Definition mlocker.h:75