ACE - ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex, ACE_Condition .
来源:互联网 发布:2017最新网络流行语 编辑:程序博客网 时间:2024/05/29 12:59
// Donot know when and where to use ACE_Thread_Mutex, I always use ACE_Recursive_Thread_Mutex.
1. define
ACE_Recursive_Thread_Mutex mMutex;
ACE_Condition<ACE_Recursive_Thread_Mutex> * mCondition;
mCondition = new ACE_Condition<ACE_Recursive_Thread_Mutex>(mMutex);
2. Usage
2.1 read
mCondition->mutex().acquire_read();
// to do your codes.
mCondition->mutex().release();
2.2 write
mCondition->mutex().acquire_write();
// to do your codes.
mCondition->mutex().release();
2.3 signal
mCondition->broadcast();
//mCondition->signal();
2.4 wait
mStateCondition->wait();
//or
ACE_Time_Value ace_timeout(timeout);
ACE_Time_Value ace_absolute_time(ACE_OS::gettimeofday() + ace_timeout);
if (mStateCondition->wait(&ace_absolute_time) == -1)
{
// failed.
}
3. deconstuctor
if (mCondition != 0)
{
delete mCondition;
mCondition=0;
}
4. Simplified mode
ACE_Guard<ACE_Recursive_Thread_Mutex> guard(mMutex);
- ACE - ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex, ACE_Condition
- ACE - ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex, ACE_Condition .
- ACE学习(六)ACE_Condition
- ACE线程之ACE_Thread_Mutex互斥锁
- ACE线程递归互斥:ACE_Recursive_Thread_Mutex类
- ACE学习(四)ACE_Recursive_Thread_Mutex与ACE_RW_Thread_Mutex
- ACE利用ACE_Thread_Mutex实现线程间互斥访问临界区
- 基于ACE的线程池学习与实现(二)——ACE_Message_Block与ACE_Condition
- [ACE程序员教程笔记]使用ACE_Thread_Mutex访问子线程中的数据
- 使用ACE_Condition
- ACE_Condition使用
- ACE_Thread_Mutex方法含义
- ACE_Guard<ACE_Thread_Mutex> guard(mutex);
- ACE_Recursive_Thread_Mutex 死锁bug
- ACE_Recursive_Thread_Mutex 死锁bug
- ACE
- ACE
- ACE
- 鼠标经过表格行时,显示变色、字体放大效果 jquery
- NFSD端write流程分析
- QTextEdit和QTextDocument(ZZ)
- 提升ASP.net性能的方法
- js解决cookie跨域访问的问题
- ACE - ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex, ACE_Condition .
- 从静态代理到动态代理
- HDOJ1715 大菲波数
- MSSQL2000 获取数据库表、视图、存储过程等结构信息
- Serializable
- AOP 概念 原理及代码实现
- 如何视频会议中回声的发现与消除
- 你与杰出电子工程师的差距在哪?
- 学习Java用英文教材