java多线程-happendBefore

指令重排:代码执行顺序与预期不一致
目的:提高性能

成都创新互联专业为企业提供武鸣网站建设、武鸣做网站、武鸣网站设计、武鸣网站制作等企业网站建设、网页设计与制作、武鸣企业网站模板建站服务,10多年武鸣做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

下例代码,结束时可能打印指令重排:**
public class tt {

private static int a=0;
private static boolean flag=false;
public static void main(String[]args) throws InterruptedException
{

//线程1更改数据
    Thread t1=new Thread(()->{

        a=1;
        flag=true;
    });
    //线程2读取数据
    Thread t2=new Thread(()->{
    if(flag)
    {
        a*=1;
    }
    if(a==0)
    {
        System.out.println("发生了指令重排"+a);
    }

    });

    t1.start();
    t2.start();

    t1.join();
    t2.join();

}
}

文章题目:java多线程-happendBefore
转载源于:http://bzwzjz.com/article/johhij.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 盐亭网站设计 高端网站建设 网站制作 成都做网站建设公司 高端网站设计推广 网站建设公司 高端网站设计 成都网站建设 成都网站制作 专业网站建设 成都网站建设公司 响应式网站设计 营销网站建设 响应式网站设计方案 高端定制网站设计 成都网站建设 定制网站建设 攀枝花网站设计 成都网站建设流程 网站制作公司 四川成都网站制作 成都网站建设