java多线程-CAS原子操作

CAS:比较并交换
借助已经实现的类AtomicInteger
内部原理:把当前的值和原来的值(序列号、地址等)作比较,如果相等则覆盖

创新互联建站公司2013年成立,先为弓长岭等服务建站,弓长岭等地企业,进行企业商务咨询服务。为弓长岭企业网站制作PC+手机+微官网三网同步一站式服务解决您的所有建站问题。

public class my {
//借助已经实现的类AtomicInteger
    //库存
    private static AtomicInteger stock=new AtomicInteger(5); //假设库存有五件商品

public static void main(String[]args) throws InterruptedException
{
    for(int i=0;i<5;i++)
    {
        new Thread(()->{
            try {
                Thread.sleep(1000);
            } catch (InterruptedException e) {

                e.printStackTrace();
            }
            Integer left=stock.decrementAndGet(); //相减和获取
            //内部已实现CAS原子操作
            if(left<1)
            {
                System.out.println("抢完了");
                return;
            }
            System.out.println(Thread.currentThread().getName()+"抢了一件商品");
            System.out.println("还剩下:"+left);
        }).start();
    }
}

}

网站栏目:java多线程-CAS原子操作
转载源于:http://bzwzjz.com/article/pdssji.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 成都网站设计 H5网站制作 成都网站建设公司 定制级高端网站建设 成都网站设计公司 成都网站建设 手机网站制作设计 重庆企业网站建设 定制网站制作 重庆网站建设 成都商城网站建设 移动手机网站制作 网站设计制作报价 企业网站建设 响应式网站建设 手机网站制作 专业网站设计 四川成都网站设计 成都网站制作公司 成都商城网站制作 网站制作 成都网站建设