随笔-156  评论-223  文章-30  trackbacks-0

   ACE中的同步机制是轻量级高效的,它不同于MFC中的同步类,MFC中的同步类采用了类继承的方式,而ACE并没有用继承方式,各个不同的锁类是平行的关系,这些类支持相同的接口,即它们的所有公共方法是相同的,因此可被适配用于动态绑定和替换,这种动态绑定是没有虚函数调用开销的,且这些方法代码短小使用了内联实现。应用程序开发者可以通过指定模板实参来使用不同的锁,并可在运行时动态替换。

   ACE中的锁是易于使用的,既有互斥锁(ACE_Mutex)又有读写锁(ACE_RW_Mutex),这些锁又细分为专门用于线程同步(ACE_Thread_Mutex,ACE_RW_Thread_Mutex)和进程(ACE_Process_Mutex,ACE_RW_Process_Mutex)同步的特定锁。相比MFC高级的是ACE中还提供了递归互斥体(ACE_Token),可有效地用于某些递归例程。

   ACE中提供了ACE_Lock锁抽象基类和ACE_Adapter_Lock锁适配器模板类,ACE_Adapter_Lock从ACE_Lock继承,实现了动态绑定和替换。另外,ACE还提供了ACE_Atomic_Op模板类,重载了基本的算术运算符,实现了原子化算术运算。

posted on 2009-04-02 16:33 春秋十二月 阅读(2031) 评论(1)  编辑 收藏 引用 所属分类: Opensrc

评论:
# re: 浅谈ACE中的同步机制 2009-04-07 13:36 | freeeyes
呵呵,博主也是研究ACE的人呀。  回复  更多评论
  

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   博问   Chat2DB   管理