Ubuntu TV Media Scanner
A centralized index for removable media content.
|
The TaskManager schedules tasks for running them in a background thread. More...
#include <mediascanner/taskmanager.h>
Public Types | |
typedef std::function< void()> | TaskFunction |
The signature of task functions. More... | |
Public Member Functions | |
TaskManager (const std::string &name) | |
~TaskManager () | |
unsigned | AppendTask (const TaskFunction &task, unsigned priority=kInstantly) |
unsigned | PrependTask (const TaskFunction &task, unsigned priority=kInstantly) |
void | RunTask (const TaskFunction &task, unsigned priority=kInstantly) |
unsigned | AppendGroupedTask (unsigned group_id, const TaskFunction &task, unsigned priority=kInstantly) |
unsigned | PrependGroupedTask (unsigned group_id, const TaskFunction &task, unsigned priority=kInstantly) |
void | RunGroupedTask (unsigned group_id, const TaskFunction &task, unsigned priority=kInstantly) |
unsigned | CancelByGroupId (unsigned group_id) |
bool | CancelTaskByTaskId (unsigned task_id) |
void | Shutdown () |
Static Public Attributes | |
static const unsigned | kInstantly = 0 |
The TaskManager schedules tasks for running them in a background thread.
The tasks are ordered by an operation ID. This operation ID can also be used to cancel tasks which are still queued, but not started yet.
typedef std::function<void()> mediascanner::TaskManager::TaskFunction |
The signature of task functions.
|
explicit |
mediascanner::TaskManager::~TaskManager | ( | ) |
unsigned mediascanner::TaskManager::AppendGroupedTask | ( | unsigned | group_id, |
const TaskFunction & | task, | ||
unsigned | priority = kInstantly |
||
) |
|
inline |
unsigned mediascanner::TaskManager::CancelByGroupId | ( | unsigned | group_id) |
bool mediascanner::TaskManager::CancelTaskByTaskId | ( | unsigned | task_id) |
unsigned mediascanner::TaskManager::PrependGroupedTask | ( | unsigned | group_id, |
const TaskFunction & | task, | ||
unsigned | priority = kInstantly |
||
) |
|
inline |
void mediascanner::TaskManager::RunGroupedTask | ( | unsigned | group_id, |
const TaskFunction & | task, | ||
unsigned | priority = kInstantly |
||
) |
|
inline |
void mediascanner::TaskManager::Shutdown | ( | ) |
|
static |