mutex
互斥锁类
引用:require("fastweb.mutex")
- 可作为应用全局变量
⚠️建议搭配
auto_lock使用
代码示例:
local mutex = require("fastweb.mutex").new()
require("fastweb.auto_lock").new(mutex)
#此时已自动上锁,al释放后自动解锁
构造函数
mutex()初始化互斥锁实例 |
方法概览
| 返回值 | 方法及描述 |
|---|---|
void |
lock()加锁 |
void |
unlock()释放锁 |
bool |
try_lock()尝试加锁 |
方法详细
lock()
| 描述 | 加锁。 |
| 参数 | 无。 |
| 返回值 | void: 无返回值。 |
示例:
local mtx = mutex.new()
mtx:lock()
unlock()
| 描述 | 释放锁。 |
| 参数 | 无。 |
| 返回值 | void: 无返回值。 |
示例:
mtx:unlock()
try_lock()
| 描述 | 尝试加锁。 |
| 参数 | 无。 |
| 返回值 | bool: 返回是否成功加锁。 |
示例:
local success = mtx:try_lock()
print("Lock acquired: ", success)