Atomic Operations
Functions
-
i32 atom_inc_i32(i32 volatile *v)
Atomically increase the value of the variable by 1.
-
u32 atom_inc_u32(u32 volatile *v)
Atomically increase the value of the variable by 1.
-
i64 atom_inc_i64(i64 volatile *v)
Atomically increase the value of the variable by 1.
-
u64 atom_inc_u64(u64 volatile *v)
Atomically increase the value of the variable by 1.
-
usize atom_inc_usize(usize volatile *v)
Atomically increase the value of the variable by 1.
-
i32 atom_dec_i32(i32 volatile *v)
Atomically decrease the value of the variable by 1.
-
u32 atom_dec_u32(u32 volatile *v)
Atomically decrease the value of the variable by 1.
-
i64 atom_dec_i64(i64 volatile *v)
Atomically decrease the value of the variable by 1.
-
u64 atom_dec_u64(u64 volatile *v)
Atomically decrease the value of the variable by 1.
-
usize atom_dec_usize(usize volatile *v)
Atomically decrease the value of the variable by 1.
-
i32 atom_add_i32(i32 volatile *base, i32 v)
Atomically increase the value of the variable by the the value provided.
-
u32 atom_add_u32(u32 volatile *base, i32 v)
Atomically increase the value of the variable by the the value provided.
-
i64 atom_add_i64(i64 volatile *base, i64 v)
Atomically increase the value of the variable by the the value provided.
-
u64 atom_add_u64(u64 volatile *base, i64 v)
Atomically increase the value of the variable by the the value provided.
-
usize atom_add_usize(usize volatile *base, isize v)
Atomically increase the value of the variable by the the value provided.
-
i32 atom_exchange_i32(i32 volatile *dst, i32 v)
Atomically replace the value of the variable with the value provided.
-
u32 atom_exchange_u32(u32 volatile *dst, u32 v)
Atomically replace the value of the variable with the value provided.
-
i64 atom_exchange_i64(i64 volatile *dst, i64 v)
Atomically replace the value of the variable with the value provided.
-
u64 atom_exchange_u64(u64 volatile *dst, u64 v)
Atomically replace the value of the variable with the value provided.
-
_Ty * atom_exchange_pointer(_Ty volatile target, void *value)
Atomically replace the value of the variable with the value provided.
-
usize atom_exchange_usize(usize volatile *dst, usize v)
Atomically replace the value of the variable with the value provided.
-
i32 atom_compare_exchange_i32(i32 volatile *dst, i32 exchange, i32 comperand)
Atomically compares the value of the variable with the specified comperand, and sets the variable to the specified value if equal.
-
u32 atom_compare_exchange_u32(u32 volatile *dst, u32 exchange, u32 comperand)
Atomically compares the value of the variable with the specified comperand, and sets the variable to the specified value if equal.
-
_Ty * atom_compare_exchange_pointer(_Ty volatile dst, void exchange, void comperand)
Atomically compares the value of the variable with the specified comperand, and sets the variable to the specified value if equal.
-
usize atom_compare_exchange_usize(usize volatile *dst, usize exchange, usize comperand)
Atomically compares the value of the variable with the specified comperand, and sets the variable to the specified value if equal.