|
CGraph
|
包含一个普通队列成员,基于mutex_封装成一个原子的优先级队列, 支持原子的waitPop/tryPop/popWithTimeout/push/empty 新增ready_flag_用于通知辅助线程快速退出 More...
#include <UAtomicQueue.h>


Public Member Functions | |
| UAtomicQueue ()=default | |
| CVoid | waitPop (T &value) |
| CBool | tryPop (T &value) |
| CBool | tryPop (std::vector< T > &values, int maxPoolBatchSize) |
| std::unique_ptr< T > | popWithTimeout (CMSec ms) |
| std::unique_ptr< T > | tryPop () |
| CVoid | push (T &&value) |
| CBool | empty () |
| CVoid | reset () |
| CVoid | setup () |
Public Member Functions inherited from CObject | |
| CObject ()=default | |
| virtual CStatus | init () |
| virtual CStatus | destroy () |
| virtual | ~CObject ()=default |
Private Attributes | |
| std::queue< std::unique_ptr< T > > | queue_ {} |
| CBool | ready_flag_ { true } |
Additional Inherited Members | |
Protected Member Functions inherited from UThreadObject | |
| CStatus | run () override |
Protected Member Functions inherited from UtilsObject | |
| CStatus | run () override |
Protected Attributes inherited from UQueueObject | |
| std::mutex | mutex_ |
| std::condition_variable | cv_ |
包含一个普通队列成员,基于mutex_封装成一个原子的优先级队列, 支持原子的waitPop/tryPop/popWithTimeout/push/empty 新增ready_flag_用于通知辅助线程快速退出
| T |
|
default |
|
inline |
判定队列是否为空
|
inline |
阻塞式等待弹出
|
inline |
传入数据
| value |

|
inline |
功能是通知所有的辅助线程停止工作
|
inline |
初始化状态
|
inline |
非阻塞式等待弹出
|
inline |
尝试弹出多个任务
| values | |
| maxPoolBatchSize |
|
inline |
尝试弹出
| value |
|
inline |
等待弹出
| value |
|
private |
|
private |