Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java volatile

作者:恐怖眼神   发布日期:2025-09-20   浏览:100

public class VolatileExample {

    private volatile boolean flag = true;

    public void run() {
        new Thread(() -> {
            while (flag) {
                // do something
            }
            System.out.println("Thread stopped.");
        }).start();

        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

        flag = false;
        System.out.println("Flag set to false.");
    }

    public static void main(String[] args) {
        VolatileExample example = new VolatileExample();
        example.run();
    }
}

解释说明:

  • volatile 关键字用于修饰变量,确保多线程环境下的可见性。即当一个线程修改了该变量的值,其他线程能够立即看到最新的值。
  • 在上面的例子中,flag 被声明为 volatile,因此在主线程中将 flag 设置为 false 后,子线程能够立即感知到这个变化并退出循环。
  • 如果没有使用 volatile,可能会导致子线程无法及时感知到 flag 的变化,从而继续执行或出现不可预期的行为。

上一篇:java 获取当前时间

下一篇:java: 找不到符号

大家都在看

java连接数据库的代码

java djl

ubuntu 卸载java

java读取excel中的图片

java新建

java sort用法

java collections.sort

java file类的方法

java发送qq邮件

java 判断

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站