小编Bal*_*ala的帖子

Java易失性变量

我试图通过以下示例了解易失性用法.我希望它先打印10秒然后再打印15秒.但大部分时间我都会得到10和10.下面的代码本身就是一些东西.

class T implements Runnable {

    private volatile int x = 10;

    @Override
    public void run() {
        if(x==10) {
            System.out.println(x);
            x = x+ 5;
        } else if(x==15) {
            System.out.println(x);
        }
    }
}


public class Prep {

    public static void main(String [] args) {
        T t1 = new T();
        new Thread(t1).start();
        new Thread(t1).start();
    }
}
Run Code Online (Sandbox Code Playgroud)

java volatile

2
推荐指数
1
解决办法
89
查看次数

标签 统计

java ×1

volatile ×1