31 lines
493 B
Markdown
31 lines
493 B
Markdown
# SpinLock::TryLock
|
|
|
|
尝试获得自旋锁。
|
|
|
|
```cpp
|
|
bool TryLock();
|
|
bool try_lock();
|
|
```
|
|
|
|
## 行为说明
|
|
|
|
当前实现有两套入口:
|
|
|
|
- `TryLock()`:引擎风格命名。
|
|
- `try_lock()`:标准 Lockable 风格别名。
|
|
|
|
两者最终都调用同一份逻辑:
|
|
|
|
```cpp
|
|
return !m_flag.test_and_set(std::memory_order_acquire);
|
|
```
|
|
|
|
## 返回值
|
|
|
|
- `bool` - 成功获得锁时返回 `true`;否则返回 `false`。
|
|
|
|
## 相关文档
|
|
|
|
- [返回类型总览](SpinLock.md)
|
|
- [Lock](Lock.md)
|