|
Foundation
|
#include "AtomicQueue.hpp"#include "Logging.hpp"#include "Thread.hpp"#include <algorithm>#include <array>#include <cmath>#include <iterator>#include <type_traits>Go to the source code of this file.
Classes | |
| struct | Foundation::Core::Job |
| struct | Foundation::Core::LambdaJob< Lambda, ReturnType, Args > |
| class | Foundation::Core::ThreadPool |
| Atomic, lock-free Thread Pool implementation with fixed bounds. More... | |
Namespaces | |
| namespace | Foundation |
| namespace | Foundation::Core |
| Lock-free atomic primitives and implementations of data structures. | |
Typedefs | |
| using | Foundation::Core::JobQueue = MPMCQueue< UniquePtr< Job > > |
| Backing job queue type for ThreadPool. | |
| using | Foundation::Core::JobQueues = std::array< JobQueue, kJobPriorityCount > |
Enumerations | |
| enum class | Foundation::Core::JobPriority : size_t { Foundation::Core::Low , Foundation::Core::Normal , Foundation::Core::High } |
Variables | |
| constexpr size_t | Foundation::Core::kJobPriorityCount = static_cast<size_t>(JobPriority::High) + 1 |