“挥发性”关键字的用途是什么?

2023-12-09

我读过一些关于volatile关键字,但我无法弄清楚它的正确用法。你能告诉我它在 C# 和 Java 中的用途吗?


考虑这个例子:

int i = 5;
System.out.println(i);

编译器可能会对此进行优化,只打印 5,如下所示:

System.out.println(5);

但是,如果有另一个线程可以改变i,这是错误的行为。如果另一个线程发生变化i为 6,优化版本仍将打印 5。

The volatile关键字可以防止此类优化和缓存,因此当另一个线程可以更改变量时非常有用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

“挥发性”关键字的用途是什么? 的相关文章