acl
3.5.3.0
|
#include <thread_cond.hpp>
Public 成员函数 | |
thread_cond (thread_mutex *mutex=NULL) | |
~thread_cond (void) | |
bool | wait (long long microseconds=-1, bool locked=false) |
bool | notify (void) |
bool | notify_all (void) |
thread_mutex & | get_mutex (void) const |
acl_pthread_cond_t * | get_cond (void) const |
额外继承的成员函数 | |
Protected 成员函数 继承自 acl::acl::noncopyable | |
noncopyable () | |
~noncopyable () | |
线程条件变量
在文件 thread_cond.hpp 第 21 行定义.
acl::thread_cond::thread_cond | ( | thread_mutex * | mutex = NULL | ) |
构造方法
mutex | {thread_mutex*} 当该参数非 NULL 时,内部自动引用 该线程锁,否则,内部创建线程锁 |
acl::thread_cond::~thread_cond | ( | void | ) |
acl_pthread_cond_t* acl::thread_cond::get_cond | ( | void | ) | const |
获得系统类型的线程条件变量对象
thread_mutex& acl::thread_cond::get_mutex | ( | void | ) | const |
获得与该线程条件变量绑定的线程互斥锁
bool acl::thread_cond::notify | ( | void | ) |
通知一个或几个等待在线程条件变量上的线程,表示条件变量就结
被这些函数引用 acl::tbox< T >::push() , 以及 acl::tbox_array< T >::push().
bool acl::thread_cond::notify_all | ( | void | ) |
通知所有等待在线程条件变量上的线程,表示条件变量就结
bool acl::thread_cond::wait | ( | long long | microseconds = -1 , |
bool | locked = false |
||
) |
等待线程条件变量就绪
microseconds | {long long} 等待条件变量就绪的超时时间(微秒级) == 0,不等待 < 0 则一直等待直到条件变量就绪 |
locked | {bool} 该参数表明是否已经将锁加锁,如果还未加锁,则 内部会先自动加锁,方法返回前再解锁;如果外部已经加锁,则内部不对 互斥锁做加锁/解锁处理 |
被这些函数引用 acl::tbox< T >::pop() , 以及 acl::tbox_array< T >::pop().