博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
volatile不是线程安全的
阅读量:4708 次
发布时间:2019-06-10

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

public class VolatileTest {    private volatile int i = 0;    public void add() {        i++;    }    public int getI() {        return this.i;    }    public static void main(String[] args) {        final VolatileTest volatileTest = new VolatileTest();        for (int i = 0; i < 10000; i++) {            new Thread(new Runnable() {                @Override                public void run() {                    try {                        Thread.sleep((int)Math.random() * 20);                    } catch (InterruptedException e) {                        e.printStackTrace();                    }                    volatileTest.add();                }            }).start();        }        System.out.println(volatileTest.getI());    }}

  read-update-write并不是线程安全的

转载于:https://www.cnblogs.com/spyder13/p/7455465.html

你可能感兴趣的文章
31、任务三十一——表单联动
查看>>
python之hasattr、getattr和setattr函数
查看>>
maven使用阿里镜像配置文件
查看>>
Copy code from eclipse to word, save syntax.
查看>>
arguments.callee的作用及替换方案
查看>>
Centos 6.5下的OPENJDK卸载和SUN的JDK安装、环境变量配置
查看>>
【.Net基础03】HttpWebRequest模拟浏览器登陆
查看>>
zTree async 动态参数处理
查看>>
Oracle学习之常见错误整理
查看>>
数据库插入数据乱码问题
查看>>
【转】IT名企面试:微软笔试题(1)
查看>>
IO流入门-第十章-DataInputStream_DataOutputStream
查看>>
DRF的分页
查看>>
Mysql 模糊匹配(字符串str中是否包含子字符串substr)
查看>>
python:open/文件操作
查看>>
流程控制 Day06
查看>>
Linux下安装Tomcat
查看>>
windows live writer 2012 0x80070643
查看>>
tomcat 和MySQL的安装
查看>>
git常用操作
查看>>