|
NexusForce 1.0.0
A rigorously engineered full-stack C++ backend library.
|
险象指针记录 更多...
#include <hazard_ptr.hpp>
Public 成员函数 | |
| bool | try_acquire () |
| 尝试获取记录的所有权 | |
| void | release () |
| 释放记录 | |
| void | protect (void *ptr) |
| 保护指定的指针 | |
| void * | get_protected () const |
| 获取当前保护的指针 | |
Public 属性 | |
| atomic< void * > | hazard_ptr {nullptr} |
| 受保护的指针 | |
| atomic< hazard_pointer_record * > | next {nullptr} |
| 链表中的下一个记录 | |
| atomic< bool > | active {false} |
| 记录是否活跃 | |
|
inlinenodiscard |
|
inline |
保护指定的指针
| ptr | 要保护的指针 |
在文件 hazard_ptr.hpp 第 68 行定义.
引用了 hazard_ptr , 以及 neforce::memory_order_release.
|
inline |
尝试获取记录的所有权
在文件 hazard_ptr.hpp 第 51 行定义.
引用了 active, neforce::memory_order_acquire , 以及 neforce::memory_order_relaxed.