add blocked_queue_terminate

pull/5/head
yuqing 2016-01-26 09:52:31 +08:00
parent cb82009656
commit 9229a5cf0b
2 changed files with 13 additions and 0 deletions

View File

@ -36,6 +36,12 @@ int blocked_queue_init(struct fast_blocked_queue *pQueue)
return 0; return 0;
} }
void blocked_queue_destroy(struct fast_blocked_queue *pQueue)
{
pthread_cond_destroy(&(pQueue->cond));
pthread_mutex_destroy(&(pQueue->lock));
}
int blocked_queue_push(struct fast_blocked_queue *pQueue, int blocked_queue_push(struct fast_blocked_queue *pQueue,
struct fast_task_info *pTask) struct fast_task_info *pTask)
{ {

View File

@ -31,6 +31,13 @@ extern "C" {
#endif #endif
int blocked_queue_init(struct fast_blocked_queue *pQueue); int blocked_queue_init(struct fast_blocked_queue *pQueue);
void blocked_queue_destroy(struct fast_blocked_queue *pQueue);
static inline void blocked_queue_terminate(struct fast_blocked_queue *pQueue)
{
pthread_cond_signal(&(pQueue->cond));
}
int blocked_queue_push(struct fast_blocked_queue *pQueue, int blocked_queue_push(struct fast_blocked_queue *pQueue,
struct fast_task_info *pTask); struct fast_task_info *pTask);
struct fast_task_info *blocked_queue_pop(struct fast_blocked_queue *pQueue); struct fast_task_info *blocked_queue_pop(struct fast_blocked_queue *pQueue);