OpenSDN source code
|
Public Types | |
typedef concurrent_queue < RequestQueueEntry * > | RequestQueue |
typedef concurrent_queue < RemoveQueueEntry * > | RemoveQueue |
typedef std::list < DBTablePartBase * > | TablePartList |
Public Member Functions | |
WorkQueue (DBPartition *partition, int partition_id) | |
~WorkQueue () | |
bool | EnqueueRequest (RequestQueueEntry *req_entry) |
bool | DequeueRequest (RequestQueueEntry **req_entry) |
void | EnqueueRemove (RemoveQueueEntry *rm_entry) |
bool | DequeueRemove (RemoveQueueEntry **rm_entry) |
void | MaybeStartRunnerUnlocked () |
void | MaybeStartRunner () |
bool | RunnerDone () |
void | SetActive (DBTablePartBase *tpart) |
DBTablePartBase * | GetActiveTable () |
int | db_partition_id () |
int | db_task_id () const |
bool | IsDBQueueEmpty () const |
bool | disable () |
void | set_disable (bool disable) |
long | request_queue_len () const |
uint64_t | total_request_count () const |
uint64_t | max_request_queue_len () const |
Static Public Attributes | |
static const int | kThreshold = 1024 |
Private Member Functions | |
DISALLOW_COPY_AND_ASSIGN (WorkQueue) | |
Private Attributes | |
DBPartition * | db_partition_ |
RequestQueue | request_queue_ |
TablePartList | change_list_ |
atomic< long > | request_count_ |
uint64_t | total_request_count_ |
uint64_t | max_request_queue_len_ |
RemoveQueue | remove_queue_ |
tbb::mutex | mutex_ |
int | db_partition_id_ |
bool | disable_ |
bool | running_ |
Definition at line 39 of file db_partition.cc.
typedef concurrent_queue<RemoveQueueEntry *> DBPartition::WorkQueue::RemoveQueue |
Definition at line 43 of file db_partition.cc.
typedef concurrent_queue<RequestQueueEntry *> DBPartition::WorkQueue::RequestQueue |
Definition at line 42 of file db_partition.cc.
typedef std::list<DBTablePartBase *> DBPartition::WorkQueue::TablePartList |
Definition at line 44 of file db_partition.cc.
|
inlineexplicit |
Definition at line 46 of file db_partition.cc.
|
inline |
Definition at line 55 of file db_partition.cc.
|
inline |
Definition at line 116 of file db_partition.cc.
|
inline |
|
inline |
Definition at line 89 of file db_partition.cc.
|
inline |
Definition at line 76 of file db_partition.cc.
|
inline |
Definition at line 126 of file db_partition.cc.
|
private |
|
inline |
|
inline |
|
inline |
Definition at line 107 of file db_partition.cc.
|
inline |
Definition at line 122 of file db_partition.cc.
|
inline |
Definition at line 137 of file db_partition.cc.
void DBPartition::WorkQueue::MaybeStartRunner | ( | ) |
Definition at line 249 of file db_partition.cc.
void DBPartition::WorkQueue::MaybeStartRunnerUnlocked | ( | ) |
|
inline |
Definition at line 129 of file db_partition.cc.
bool DBPartition::WorkQueue::RunnerDone | ( | ) |
Definition at line 254 of file db_partition.cc.
|
inline |
|
inline |
|
inline |
Definition at line 133 of file db_partition.cc.
|
private |
Definition at line 144 of file db_partition.cc.
|
private |
Definition at line 142 of file db_partition.cc.
|
private |
Definition at line 150 of file db_partition.cc.
|
private |
Definition at line 151 of file db_partition.cc.
|
static |
Definition at line 41 of file db_partition.cc.
|
private |
Definition at line 147 of file db_partition.cc.
|
private |
Definition at line 149 of file db_partition.cc.
|
private |
Definition at line 148 of file db_partition.cc.
|
private |
Definition at line 145 of file db_partition.cc.
|
private |
Definition at line 143 of file db_partition.cc.
|
private |
Definition at line 152 of file db_partition.cc.
|
private |
Definition at line 146 of file db_partition.cc.