GCC 原子内存访问内置函数(IBM 扩展)
本节提供了有关原子内存访问内置函数的参考信息,这些函数的行为对应于 GNU Compiler Collection (GCC) 提供的行为。 在具有多个线程的程序中,您可以使用这些函数在一个线程中以原子方式安全地修改数据,而不受其他线程的干扰。
这些内置函数以原子方式处理数据,而无论主机中安装了多少处理器。
在每个函数的原型中,参数类型 T、U 和 V 可以是指针或整型。 U 和 V 也可以是实数浮点类型,但只有在 T 为整型时。 下表列出了这些内置函数支持的整型和浮点类型。
signed char |
unsigned char |
short int |
unsigned short int |
int |
unsigned int |
long int |
unsigned long int |
long long int 1 |
unsigned long long int 1 |
bool |
_Bool |
1 限制: 此类型仅在 64 位平台上受支持。 |
|
float |
double |
long double |
在每个函数的原型中,省略号 (...) 表示可选的参数列表。 XL C/C++ 将忽略这些可选参数并保护所有全局可访问的变量。
GCC 原子内存访问内置函数分为以下类别。