Monado OpenXR Runtime
|
Worker and threading pool. More...
#include "xrt/xrt_defines.h"
Go to the source code of this file.
Data Structures | |
struct | u_worker_thread_pool |
A worker pool, can shared between multiple groups worker pool. More... | |
struct | u_worker_group |
A worker group where you submit tasks to. More... | |
Typedefs | |
typedef void(* | u_worker_group_func_t) (void *) |
Function typedef for tasks. More... | |
Functions | |
struct u_worker_thread_pool * | u_worker_thread_pool_create (uint32_t starting_worker_count, uint32_t thread_count, const char *prefix) |
Creates a new thread pool to be used by a worker group. More... | |
void | u_worker_thread_pool_destroy (struct u_worker_thread_pool *uwtp) |
Internal function, only called by reference. More... | |
static void | u_worker_thread_pool_reference (struct u_worker_thread_pool **dst, struct u_worker_thread_pool *src) |
Standard Monado reference function. More... | |
struct u_worker_group * | u_worker_group_create (struct u_worker_thread_pool *uwtp) |
Create a new worker group. More... | |
void | u_worker_group_push (struct u_worker_group *uwg, u_worker_group_func_t f, void *data) |
Push a new task to worker group. More... | |
void | u_worker_group_wait_all (struct u_worker_group *uwg) |
Wait for all pushed tasks to be completed, "donates" this thread to the shared thread pool. More... | |
void | u_worker_group_destroy (struct u_worker_group *uwg) |
Destroy a worker pool. More... | |
static void | u_worker_group_reference (struct u_worker_group **dst, struct u_worker_group *src) |
Standard Monado reference function. More... | |
Worker and threading pool.