ACE - ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex, ACE_Condition
来源:互联网 发布:淘宝介绍 编辑:程序博客网 时间:2024/05/29 11:25
// 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
- 软件测试方案之安装测试指南
- 第三届中国社会化媒体口碑营销高峰论坛召开
- 我的 UL80VT Windows 7 升級問題,要告一段落了
- 评“创新工厂”
- 使用CascadingDropDown实现级联式下拉框
- ACE - ACE_Recursive_Thread_Mutex, ACE_Thread_Mutex, ACE_Condition
- .NET 与安全性(1)——— 数据加密算法
- 当DiscuzNT遇上了Loadrunner(下)
- EXT 二级联动(EXT+struts2)
- VC++ 实战数据库OLEDB编程(一)
- 当DiscuzNT遇上了Loadrunner(中)
- VC++ 实战OLEDB编程(二)
- 与小郁合作之——大整数的因式分解问题的尝试
- 远程桌面——连接到指定的会话