您的位置:首页 > 其它

Compare and Swap(CAS)

2013-07-23 18:24 169 查看
CAS(Compare and Swap)是个原子操作。拿到一个新值后,CAS将其与内存中的值进行比较,若内存中的值和这个值不一样,则将这个值写入内存,否则,不做操作。在Java的
java.util.concurrent.atomic包中对CAS的实现是通过synchronized关键字实现的:

public final synchronized boolean compareAndSet(long expect, long update) { 
        if (value == expect) {                                                  
            value = update;                                                    
            return true;                                                        
        } else {                                                                
            return false;                                                       
        }                                                                      
    }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: