13#ifndef BOOST_FAIRNESS_PQSPINLOCK_HPP
14#define BOOST_FAIRNESS_PQSPINLOCK_HPP
52 Thread* t = t_.getThread(
this);
55 throw std::logic_error(
"Thread Pool returned a nullptr: Increase BOOST_FAIRNESS_MAX_THREADS");
61 std::this_thread::yield();
68 Thread* t = t_.reGetThread(
this);
Definition request_pool.hpp:50
void returnRequest(Request *const req)
Definition request_pool.hpp:66
Request * getRequest()
Definition request_pool.hpp:57
Definition coherent_priority_lock.hpp:33
void requestLock(Thread *const requester)
Definition coherent_priority_lock.hpp:49
void grantLock(Thread *const requester)
Definition coherent_priority_lock.hpp:63
void initialize(Request *const firstTail)
Definition coherent_priority_lock.hpp:39
Definition pqspinlock.hpp:25
void lock(Priority_t const priority=0)
Definition pqspinlock.hpp:49
void unlock()
Definition pqspinlock.hpp:67
This file contains the implementation of a coherent priority lock.
This file contains configurations about boost and 128bit cpu support. TODO.
Definition coherent_priority_lock.hpp:25
uint8_t Priority_t
Definition priority_t.hpp:17
Alias the type Priority_t. Priority_t is the type of priorities that are used by the priority_mutexes...
This file contains the implementation of a static very fast and simple request pool.
Definition request_pool.hpp:25
Definition thread_pool.hpp:24
void prepare(Priority_t p, Request *req)
Definition thread_pool.hpp:28
Request * watch_
Definition thread_pool.hpp:39
This file contains the implementation of a pool of thread structs.