VLC 4.0.0-dev
vlc_executor Struct Reference

The executor (also vlc_executor_t, exposed as opaque type in the public header). More...

Collaboration diagram for vlc_executor:
[legend]

Data Fields

vlc_mutex_t lock
 
unsigned max_threads
 Maximum number of threads to run the tasks. More...
 
struct vlc_list threads
 List of active vlc_executor_thread. More...
 
unsigned nthreads
 Thread count (in a separate field to quickly compare to max_threads) More...
 
unsigned unfinished
 
vlc_cond_t idle_wait
 Wait for the executor to be idle (i.e. More...
 
struct vlc_list queue
 Queue of vlc_runnable. More...
 
vlc_cond_t queue_wait
 Wait for the queue to be non-empty. More...
 
bool closing
 True if executor deletion is requested. More...
 

Detailed Description

The executor (also vlc_executor_t, exposed as opaque type in the public header).

Field Documentation

◆ closing

bool vlc_executor::closing

True if executor deletion is requested.

Referenced by QueueTake(), vlc_executor_Delete(), vlc_executor_New(), and vlc_executor_Submit().

◆ idle_wait

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

◆ lock

◆ max_threads

unsigned vlc_executor::max_threads

Maximum number of threads to run the tasks.

Referenced by SpawnThread(), vlc_executor_New(), and vlc_executor_Submit().

◆ nthreads

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

◆ queue

struct vlc_list vlc_executor::queue

◆ queue_wait

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

◆ threads

struct vlc_list vlc_executor::threads

◆ unfinished


The documentation for this struct was generated from the following file: