VLC 4.0.0-dev
|
The executor (also vlc_executor_t, exposed as opaque type in the public header). More...
Data Fields | |
vlc_mutex_t | lock |
unsigned | max_threads |
Maximum number of threads to run the tasks. | |
struct vlc_list | threads |
List of active vlc_executor_thread. | |
unsigned | nthreads |
Thread count (in a separate field to quickly compare to max_threads) | |
unsigned | unfinished |
vlc_cond_t | idle_wait |
Wait for the executor to be idle (i.e. | |
struct vlc_list | queue |
Queue of vlc_runnable. | |
vlc_cond_t | queue_wait |
Wait for the queue to be non-empty. | |
bool | closing |
True if executor deletion is requested. | |
The executor (also vlc_executor_t, exposed as opaque type in the public header).
bool vlc_executor::closing |
True if executor deletion is requested.
Referenced by QueueTake(), vlc_executor_Delete(), vlc_executor_New(), and vlc_executor_Submit().
vlc_cond_t vlc_executor::idle_wait |
Wait for the executor to be idle (i.e.
unfinished == 0)
Referenced by ThreadRun(), vlc_executor_Cancel(), vlc_executor_New(), and vlc_executor_WaitIdle().
vlc_mutex_t vlc_executor::lock |
unsigned vlc_executor::max_threads |
Maximum number of threads to run the tasks.
Referenced by SpawnThread(), vlc_executor_New(), and vlc_executor_Submit().
unsigned vlc_executor::nthreads |
Thread count (in a separate field to quickly compare to max_threads)
Referenced by SpawnThread(), vlc_executor_New(), and vlc_executor_Submit().
struct vlc_list vlc_executor::queue |
Queue of vlc_runnable.
Referenced by QueuePush(), QueueTake(), vlc_executor_Delete(), and vlc_executor_New().
vlc_cond_t vlc_executor::queue_wait |
Wait for the queue to be non-empty.
Referenced by QueuePush(), QueueTake(), vlc_executor_Delete(), and vlc_executor_New().
struct vlc_list vlc_executor::threads |
List of active vlc_executor_thread.
Referenced by SpawnThread(), vlc_executor_Delete(), and vlc_executor_New().
unsigned vlc_executor::unfinished |
Referenced by ThreadRun(), vlc_executor_Cancel(), vlc_executor_Delete(), vlc_executor_New(), vlc_executor_Submit(), and vlc_executor_WaitIdle().