diff --git a/src/common_blocked_queue.h b/src/common_blocked_queue.h index 2a91403..684d9f8 100644 --- a/src/common_blocked_queue.h +++ b/src/common_blocked_queue.h @@ -45,7 +45,13 @@ int common_blocked_queue_init_ex(struct common_blocked_queue *queue, void common_blocked_queue_destroy(struct common_blocked_queue *queue); -static inline void common_blocked_queue_terminate(struct common_blocked_queue *queue, const int count) +static inline void common_blocked_queue_terminate(struct common_blocked_queue *queue) +{ + pthread_cond_signal(&(queue->cond)); +} + +static inline void common_blocked_queue_terminate_all( + struct common_blocked_queue *queue, const int count) { int i; for (i=0; icond)); } +static inline void blocked_queue_terminate_all(struct fast_blocked_queue *pQueue, + const int count) +{ + int i; + for (i=0; icond)); + } +} + int blocked_queue_push(struct fast_blocked_queue *pQueue, struct fast_task_info *pTask); + struct fast_task_info *blocked_queue_pop(struct fast_blocked_queue *pQueue); #ifdef __cplusplus