1. 声明:
使用 atomic_t 类型来声明一个原子变量。
例如:
c
atomic_t counter;
2. 初始化:
使用 atomic_init() 函数来初始化原子变量。
例如:
c
atomic_init(&counter, 0);
3. 原子操作:
提供了几个原子操作函数,例如:
atomic_inc(): 原子增加变量
atomic_dec(): 原子减少变量
atomic_read(): 原子读取变量
atomic_xchg(): 原子交换变量
4. 读-修改-写操作:
提供了几个读-修改-写操作函数,例如:
atomic_add(): 原子增加变量并返回修改后的值
atomic_sub(): 原子减少变量并返回修改后的值
atomic_cmpxchg(): 原子比较并交换变量
示例:
c
// 创建一个原子变量
atomic_t counter;
// 初始化原子变量为 0
atomic_init(&counter, 0);
// 原子增加原子变量
atomic_inc(&counter);
// 原子读取原子变量
int value = atomic_read(&counter);
// 原子比较并交换原子变量
int old_value = atomic_cmpxchg(&counter, value, value + 1);
上一篇:linux设置变量的三种方式
下一篇:linux系统中的系统变量