IssueNo:#I3ICCI:框架新增自动锁封装
Description: add ace auto lock guard
Sig:ace_engine_lite
Feature or Bugfix:Feature
Binary Source:No

框架有些地方需要考虑使用锁来进行保护,以便应对多线程访问情况,计划在框架中新增对于自动锁的封装,方便使用;

使用方法:

  1. 考虑锁的影响范围,并在合适的地方声明锁对象 LockType lock_;
  2. 在需要加锁的函数内,考虑最新的锁控制范围,并通过声明局部变量来上锁和下锁;
xxx Func()
{
  ......
  if (xxxx) {
    AutoLockGuard lockGuard(lock_);
    ....
    return;
  }
  ......

}

上面的示例,离开作用域后会自动解锁