test_and_set 子例程

用途

以原子方式测试并设置内存位置。

标准 C 库 (libc.a)

语法

#include <sys/atomic_op.h>

boolean_t test_and_set (word_addr, mask)
atomic_p word_addr;
int mask;

描述

test_and_set 子例程尝试以原子方式将存储在 沃德阿德尔 中的值与 面具指定的值进行 OR 运算。 如果已在 沃德阿德尔处存储的值中设置 面具 中的任何位,那么不会进行任何更新。

参数

描述
沃德阿德尔 指定将设置的内存位置的地址。
mask 指定要用于设置由 沃德阿德尔指定的内存位置的掩码值。

返回值

如果存储在 沃德阿德尔 处的值已更新,那么 test_and_set 子例程将返回 true。 否则,将返回 false。