博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
cas 之-sql篇
阅读量:6620 次
发布时间:2019-06-25

本文共 495 字,大约阅读时间需要 1 分钟。

hot3.png

public final int getAndIncrement(int id) {  

        for (;;) {  
            int current = sql.query('select value from table where id = id');  
            int next = current + 1;  
            if (compareAndSet(current, next))  
                return current;  
        }  
}  
/***
   expect 原来的值,update修改后的值,如果在修改前,有别的现成修改了这个值。那么expect发生改变,修改失败。
*/
public final boolean compareAndSet(int expect, int update) {  
       int up = sql.execute('update value = update table where value = expect')
       if(up > 0){
         return true;
       }
        return false;
}
 

转载于:https://my.oschina.net/xiaominmin/blog/3058410

你可能感兴趣的文章
基础教学 | 什么是负载均衡?
查看>>
Hexo + yilia 搭建博客可能会遇到的所有疑问
查看>>
几道javascript练习题
查看>>
MySQL深入08-日志及其参数设定
查看>>
【一天一个shell命令】文本内容操作系列-sed-简介
查看>>
让 SCOM 2007 R2 使用 SQL Server 2008 R2 数据库
查看>>
镭速RaySync VS FTP 系列(2) - 阿里云东京到阿里云深圳
查看>>
鼠标滑过某一个图标时,提示讯息
查看>>
转载:如何运用VI编辑器进行查找替换
查看>>
Storyboard只支持iOS5.0或者以上的版本
查看>>
搜索引擎蜘蛛爬虫原理
查看>>
kafka备份机制——zk选举leader,leader在broker里负责备份
查看>>
PictureBox 读取图片及绘画
查看>>
MFC 的CLIST控件
查看>>
android92 aidl远程进程通信
查看>>
[Java IO]01_File类和RandomAccessFile类
查看>>
现代软件工程 第五章 【团队和流程】练习与讨论
查看>>
Html-文档类型(DTD)和DOCTYPE
查看>>
Linux进程冻结技术【转】
查看>>
鼠标的当前位置
查看>>