acl  3.5.3.0
acl::locker类 参考

#include <locker.hpp>

+ 类 acl::locker 继承关系图:
+ acl::locker 的协作图:

Public 成员函数

 locker (bool use_mutex=true, bool use_spinlock=false)
 
virtual ~locker ()
 
bool open (const char *file_path)
 
bool open (int fh)
 
bool lock ()
 
bool try_lock ()
 
bool unlock ()
 

额外继承的成员函数

- Protected 成员函数 继承自 acl::acl::noncopyable
 noncopyable ()
 
 ~noncopyable ()
 

详细描述

互斥锁,可以同时创建文件锁和线程锁,也可以只创建一种锁

在文件 locker.hpp22 行定义.

构造及析构函数说明

◆ locker()

acl::locker::locker ( bool  use_mutex = true,
bool  use_spinlock = false 
)

构造函数

参数
use_mutex{bool} 是否创建线程锁
use_spinlock{bool} 内部当使用线程锁时是否需要自旋锁

◆ ~locker()

virtual acl::locker::~locker ( )
virtual

成员函数说明

◆ lock()

bool acl::locker::lock ( )

针对已经打开的锁(包括线程锁和文件锁)进行加锁

返回
{bool} 加锁是否成功

◆ open() [1/2]

bool acl::locker::open ( const char *  file_path)

根据文件路径创建文件锁

参数
file_path{const char*} 文件路径,非空
返回
{bool} 是否成功 注:此函数与下面的 open 函数仅能同时调用一个

◆ open() [2/2]

bool acl::locker::open ( int  fh)

根据文件句柄创建文件锁

参数
fh{int} 文件句柄
返回
{bool} 是否成功

◆ try_lock()

bool acl::locker::try_lock ( )

尝试对已经打开的锁(包括线程锁和文件锁)进行加锁

返回
{bool} 加锁是否成功

◆ unlock()

bool acl::locker::unlock ( )

针对已经打开的锁(包括线程锁和文件锁)进行解锁

返回
{bool} 解锁是否成功

该类的文档由以下文件生成: