NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
file_lock_guard类 参考

文件区域锁守卫 更多...

#include <file_locker.hpp>

Public 类型

using difference_type = file_locker::difference_type
 偏移量类型

Public 成员函数

 file_lock_guard (file_locker &locker, difference_type offset, difference_type length, file_lock mode)
 构造函数,立即获取锁
 ~file_lock_guard ()
 析构函数,自动释放锁
NEFORCE_NODISCARD bool is_locked () const noexcept
 检查是否持有锁
bool unlock () noexcept
 手动释放锁

详细描述

文件区域锁守卫

自动管理文件锁的生命周期, 在构造时获取锁,在析构时自动释放锁。

在文件 file_locker.hpp134 行定义.

构造及析构函数说明

◆ file_lock_guard()

file_lock_guard::file_lock_guard ( file_locker & locker,
difference_type offset,
difference_type length,
file_lock mode )

构造函数,立即获取锁

参数
locker文件锁管理器
offset锁定起始偏移
length锁定长度
mode锁定模式

在构造时尝试获取锁。如果获取失败,locked_标志为false。

被这些函数引用 ~file_lock_guard().

◆ ~file_lock_guard()

file_lock_guard::~file_lock_guard ( )

析构函数,自动释放锁

如果当前持有锁,自动释放。

引用了 file_lock_guard().

成员函数说明

◆ is_locked()

NEFORCE_NODISCARD bool file_lock_guard::is_locked ( ) const
inlinenoexcept

检查是否持有锁

返回
持有锁返回true

在文件 file_locker.hpp170 行定义.

◆ unlock()

bool file_lock_guard::unlock ( )
noexcept

手动释放锁

返回
释放成功返回true

提前释放锁,之后析构函数不会再尝试释放。 释放后is_locked()返回false。


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