volatile 相关问题

Volatile是一个限定符,用于定义“可以自行更改”的数据存储区域(对象,字段,变量,参数),从而禁止某些代码生成器优化。在某些但不是所有识别此限定符的语言中,对此类数据的访问是线程安全的。

波动是否多余?

这是用于相等检查的alglib库的示例函数(C ++):ae_bool ae_fp_eq(double v1,double v2){/ * IEEE严格浮点比较* / volatile double x = v1; ...

回答 1 投票 2


在方法开始时使用Volatile.Write的原因

[我想我稍微有点了解Volatile.Write和Volatile.Read到底是做什么的,但是我已经看到一些示例,其中在像CLR一样通过C#书的方法的开头使用了Volatile.Write ...] >

回答 2 投票 0

为什么volatile在比较期间不能解决数据竞争

我正在尝试从此处尝试多线程和以下示例:https://docs.oracle.com/javase/specs/jls/se10/html/jls-8.html#jls-8.3.1.4我已经在下面发布了我的代码。你可以...

回答 1 投票 2

Java非空循环会影响线程读取静态变量吗?

[学习关键字volatile时,我发现https://stackoverflow.com/a/130320/4213589。我做了一些更改,但结果令人困惑。这是我的代码:import java.util.concurrent。*;公共类...

回答 1 投票 0

是否将字符串类型引用标记为易挥发?

我已经阅读了一些文章和文章,说我们不应该将Java对象声明为volatile,因为结果是,只有引用才变成volatile。以下是一些示例:link-1 link-2 link-3 ...

回答 2 投票 2

Java volatile字符串

我已经阅读了一些文章和文章,说我们不应该将Java对象声明为volatile,因为结果是,只有引用才变成volatile。以下是一些示例:link-1 link-2 link-3 ...

回答 1 投票 1


在对象Y上定义的同步块中访问对象X是否安全?

对于在同步方法或块中访问对象状态是否安全,存在问题的答案。我的问题:在同步块内访问对象X是否安全,...

回答 1 投票 0

Java易失性自定义对象-完整/深层对象可见性

我有以下内容:公共类MainClass {私有最终Map > myMap = new HashMap <>();公共addMyCustomObject(MyCustomObject customObj){...

回答 1 投票 0

Java volatile关键字-我需要吗? [重复]

我有一个多线程环境,由“池”管理。此池保证一次只能有一个线程可以访问共享资源。一旦资源被线程释放,它就是...

回答 1 投票 0

使用双重检查锁定实现单例时,我们是否需要volatile

假设我们使用双重检查锁来实现单例模式:私有静态单例实例;私有静态对象锁= new Object();公共静态单例getInstance(){...

回答 1 投票 2

Singleton Pattern(Java)中的同步块

我对我在Wikipedia上发现的线程安全Singleton模式有疑问。公共最终类Singleton {私有静态volatile Singleton实例= null;私人Singleton(){} ...

回答 2 投票 1

使用双重检查锁定来实现单例时是否需要波动?]

假设我们使用双重检查锁来实现单例模式:私有静态单例实例;私有静态对象锁= new Object();公共静态单例getInstance(){...

回答 1 投票 2

Java'final'实例变量-并发访问可以读取不同的值吗?

[在阅读与线程和锁相关的文档时,描述final关键字的一句话吸引了我:相应地,允许编译器将final字段的值保留在...中]] >>

回答 2 投票 0

Task.IsCompleted使用缓存标志的原因是什么?

我正在研究System.Threading.Tasks(.NET标准2.0)中Task的一些实现细节,并且遇到了这段有趣的代码:internal volatile int m_stateFlags; ... ...

回答 1 投票 1

为什么未将java.util.concurrent.locks.AbstractOwnableSynchronizer.exclusiveOwnerThread声明为易失性?

在阅读java.util.concurrent.locks.ReentrantLock的源代码时,我发现tryLock()方法的实现如下:final boolean nonfairTryAcquire(int gets){...

回答 1 投票 0

Java内存模型保证易失性

我对易变语义几乎没有疑问。假设有三个线程T1,T2和T3,以及给定类的单个实例。类Foo {private int x = 1;私有整数y = 2; ...

回答 1 投票 3

扩展类并使变量易变

我有这个向量类别:public class Vector {public double x;公共双y; public double getLength(){返回Math.sqrt(x * x + y * y); }}大多数时候我只想...

回答 1 投票 0


© www.soinside.com 2019 - 2024. All rights reserved.