-
-
-
-
-
-
-
-
-
CAS(CompareAndSwap),是用来实现lock-free编程的重要手段之一,多数处理器都支持这一原子操作,其用伪代码描述如下,
template bool CAS(T*addr,T expected,T value)
{
if(*addr==expected){
*addr=value;
return true;
}
return false;
}
int count=0;
void count_atomic_inc(int*addr)
{
int oldval=0;
int newval=0;
do{
oldval=*addr;
newval=______+1;
}until CAS(_______,________,_________)
}
请完成下面填空,实现全局计数器的原子递增操作.
newval,*addr,*oldval, oldval
oldval,*addr,oldval,newval
oldval,*addr,oldval,*newval
oldval,*addr,newval,oldval ...
阅读题目
单选题
经典指数
-
扫描后移动端查看
相关标签
同类标签
|
微信公众号
|
|
欢迎加入,一起群聊
|