首页 旅游资讯 线路攻略 景点大全 国内游 境外游 美食特产
您的当前位置:首页正文

java CAS是什么

2024-07-17 来源:锐游网

1、说明

当多个线程同时对某个资源进行CAS操作时,只有一个线程成功,但不会堵塞其他线程,其他线程只会收到操作失败的信号。可见CAS其实是一个乐观的锁。

2、实例

跟随AtomInteger的代码,我们可以发现最终调用的是sum.misc.Unsafe。看看Unsafe这个名字,它是一个不安全的类别,它利用了Java类别和可见性规则中恰到好处的漏洞。为了速度,Unsafe在Java的安全标准上做出了一些妥协。

public final native boolean compareAndSwapInt(Object var1, long var2, int var4, int var5);

这几个 CAS 的方法应该是使用了本地的方法。所以这几个方法的具体实现需要我们自己去 jdk 的源码中搜索。

以上就是java CAS的基本介绍,希望对大家有所帮助。更多Java学习指路:

本教程操作环境:windows7系统、java10版,DELL G3电脑。

显示全文