19 #ifndef BACKGROUND_WORKER_H__ 20 #define BACKGROUND_WORKER_H__ 86 int( *
pf_start )(
void* owner,
void* entity,
void** out );
121 void( *
pf_stop )(
void* owner,
void* handle );
172 void*
id,
int timeout );
int(* pf_probe)(void *owner, void *handle)
Probe a running task.
Definition: background_worker.h:102
void background_worker_RequestProbe(struct background_worker *worker)
Request the background-worker to probe the current task.
Definition: background_worker.c:333
Definition: background_worker.c:49
Definition: background_worker.h:22
void(* pf_stop)(void *owner, void *handle)
Stop a running task.
Definition: background_worker.h:121
int64_t vlc_tick_t
High precision date or time interval.
Definition: vlc_tick.h:45
void * owner
Definition: background_worker.c:50
void(* pf_release)(void *entity)
Release an entity.
Definition: background_worker.h:50
vlc_tick_t default_timeout
Default timeout for completing a task.
Definition: background_worker.h:30
void background_worker_Cancel(struct background_worker *worker, void *id)
Remove entities from the background-worker.
Definition: background_worker.c:326
struct background_worker * background_worker_New(void *owner, struct background_worker_config *config)
Create a background-worker.
Definition: background_worker.c:285
void(* pf_hold)(void *entity)
Hold a queued item.
Definition: background_worker.h:64
int max_threads
Maximum number of threads used to execute tasks.
Definition: background_worker.h:35
void background_worker_Delete(struct background_worker *worker)
Delete a background-worker.
Definition: background_worker.c:347
int(* pf_start)(void *owner, void *entity, void **out)
Start a new task.
Definition: background_worker.h:86
int background_worker_Push(struct background_worker *worker, void *entity, void *id, int timeout)
Push an entity into the background-worker.
Definition: background_worker.c:291