|
L4Re Operating System Framework
Interface and Usage Documentation
|
C thread group interface, see L4::Thread_group for the C++ interface. More...
Enumerations | |
| enum | L4_thread_group_ops { L4_THREAD_GROUP_ADD_OP = 2UL , L4_THREAD_GROUP_REMOVE_OP = 3UL } |
| Operations on the Thread_group object. More... | |
| enum | L4_thread_group_policy { L4_THREAD_GROUP_POLICY_STRICT_CORE_LOCAL = 0 , L4_THREAD_GROUP_POLICY_SOFT_CORE_LOCAL = 1 } |
| Thread group policy. More... | |
Functions | |
| l4_msgtag_t | l4_thread_group_add (l4_cap_idx_t tg, l4_cap_idx_t thread) L4_NOTHROW |
| Add thread to a thread group. | |
| l4_msgtag_t | l4_thread_group_remove (l4_cap_idx_t tg, l4_cap_idx_t thread) L4_NOTHROW |
| Remove thread from a thread group. | |
C thread group interface, see L4::Thread_group for the C++ interface.
An L4 thread group is a collection of threads used as indirection for IPC gate and IRQ objects such that these objects can have multiple receivers, from which the kernel selects one according to a policy.
The primary use case for thread groups are multi-threaded servers and CPU core local IRQ / IPC delivery.
A thread can be bound to at most one thread group. Before binding a thread to a thread group, the thread must be bound to a task. All threads bound to the same thread group must belong to the same task.
| enum L4_thread_group_ops |
Operations on the Thread_group object.
| Enumerator | |
|---|---|
| L4_THREAD_GROUP_ADD_OP | Add thread to thread group. |
| L4_THREAD_GROUP_REMOVE_OP | Remove thread from thread group. |
Definition at line 40 of file thread_group.h.
Thread group policy.
Define how to select a suitable thread from the thread group.
Definition at line 52 of file thread_group.h.
|
inline |
Add thread to a thread group.
| tg | Thread group object. |
| thread | Thread to add to the thread group. |
Definition at line 135 of file thread_group.h.
References L4_NOTHROW, and l4_utcb().
|
inline |
Remove thread from a thread group.
| tg | Thread group object. |
| thread | Thread to remove from the thread group. |
Definition at line 142 of file thread_group.h.
References L4_NOTHROW, and l4_utcb().