|
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().