libfoedus-core
FOEDUS Core Library
|
Typedefs of ID types used in thread package. More...
Typedefs of ID types used in thread package.
Definition in file thread_id.hpp.
Go to the source code of this file.
Namespaces | |
foedus | |
Root package of FOEDUS (Fast Optimistic Engine for Data Unification Services). | |
foedus::thread | |
Thread and Thread-Group, which abstracts NUMA-core/node and provides API to attach/detach tasks to pooled threads. | |
Typedefs | |
typedef uint8_t | foedus::thread::ThreadGroupId |
Typedef for an ID of ThreadGroup (NUMA node). More... | |
typedef uint8_t | foedus::thread::ThreadLocalOrdinal |
Typedef for a local ID of Thread (core), which is NOT unique across NUMA nodes. More... | |
typedef uint16_t | foedus::thread::ThreadId |
Typedef for a global ID of Thread (core), which is unique across NUMA nodes. More... | |
typedef uint16_t | foedus::thread::ThreadGlobalOrdinal |
Typedef for a globally and contiguously numbered ID of thread. More... | |
typedef uint64_t | foedus::thread::ThreadTicket |
Typedef for a monotonically increasing ticket for thread impersonation. More... | |
typedef int64_t | foedus::thread::TimeoutMicrosec |
Used as a general timeout parameter (in microseconds) for synchronous methods. More... | |
Enumerations | |
enum | foedus::thread::ThreadPolicy { foedus::thread::kScheduleOther = 0, foedus::thread::kScheduleFifo = 1, foedus::thread::kScheduleRr = 2, foedus::thread::kScheduleBatch = 3, foedus::thread::kScheduleIdle = 5 } |
Thread policy for worker threads. More... | |
enum | foedus::thread::ThreadPriority { foedus::thread::kPriorityIdle = 0, foedus::thread::kPriorityLowest = 1, foedus::thread::kPriorityDefault = 50, foedus::thread::kPriorityHighest = 99 } |
Thread priority for worker threads. More... | |
enum | foedus::thread::ThreadStatus { foedus::thread::kNotInitialized = 0, foedus::thread::kWaitingForTask, foedus::thread::kWaitingForExecution, foedus::thread::kRunningTask, foedus::thread::kWaitingForClientRelease, foedus::thread::kWaitingForTerminate, foedus::thread::kTerminated } |
Impersonation status of each worker thread. More... | |
Functions | |
ThreadId | foedus::thread::compose_thread_id (ThreadGroupId node, ThreadLocalOrdinal local_core) |
Returns a globally unique ID of Thread (core) for the given node and ordinal in the node. More... | |
ThreadGroupId | foedus::thread::decompose_numa_node (ThreadId global_id) |
Extracts NUMA node ID from the given globally unique ID of Thread (core). More... | |
ThreadLocalOrdinal | foedus::thread::decompose_numa_local_ordinal (ThreadId global_id) |
Extracts local ordinal from the given globally unique ID of Thread (core). More... | |
ThreadGlobalOrdinal | foedus::thread::to_global_ordinal (ThreadId thread_id, uint8_t threads_per_nodes) |
Calculate ThreadGlobalOrdinal from ThreadId. More... | |
Variables | |
const ThreadGroupId | foedus::thread::kMaxThreadGroupId = 0xFF |
Maximum possible value of ThreadGroupId. More... | |
const ThreadLocalOrdinal | foedus::thread::kMaxThreadLocalOrdinal = 0xFF |
Maximum possible value of ThreadLocalOrdinal. More... | |
const ThreadId | foedus::thread::kMaxThreadId = 0xFFFF |
Maximum possible value of ThreadId. More... | |