|
Thread System 0.3.1
High-performance C++20 thread pool with work stealing and DAG scheduling
|
Internal queue node structure. More...

Public Member Functions | |
| node () | |
| node (std::unique_ptr< job > &&job_data) | |
Public Attributes | |
| std::unique_ptr< job > | data |
| std::atomic< node * > | next {nullptr} |
Internal queue node structure.
Nodes use atomic pointers for lock-free traversal. Each node holds one job (or nullptr for dummy node).
Definition at line 216 of file lockfree_job_queue.h.
|
inline |
Definition at line 220 of file lockfree_job_queue.h.
|
inlineexplicit |
Definition at line 222 of file lockfree_job_queue.h.
| std::unique_ptr<job> kcenon::thread::detail::lockfree_job_queue::node::data |
Definition at line 217 of file lockfree_job_queue.h.
Referenced by kcenon::thread::detail::lockfree_job_queue::node_pool::acquire(), kcenon::thread::detail::lockfree_job_queue::dequeue(), and kcenon::thread::detail::lockfree_job_queue::node_pool::release().
| std::atomic<node*> kcenon::thread::detail::lockfree_job_queue::node::next {nullptr} |
Definition at line 218 of file lockfree_job_queue.h.
Referenced by kcenon::thread::detail::lockfree_job_queue::node_pool::acquire(), kcenon::thread::detail::lockfree_job_queue::dequeue(), kcenon::thread::detail::lockfree_job_queue::empty(), kcenon::thread::detail::lockfree_job_queue::enqueue(), kcenon::thread::detail::lockfree_job_queue::node_pool::release(), and kcenon::thread::detail::lockfree_job_queue::node_pool::~node_pool().