![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
T_youyou_T
加油,骚年
展开
-
volatile和synchronized区别
1)volatile本质是告诉JVM当前变量在寄存器中的值是不确定的,需要从主存中读取。synchronized则是锁定当前变量,只有当前线程可以访问该变量,其它线程被阻塞。 2)volatile仅能使用在变量级别,synchronized则可以使用在变量、方法。 3)volatile仅能实现变量修改的可见性,而synchronized则可以保证变量修改的可见性和原子性。《Java编程思想》上说,...原创 2019-12-29 21:32:24 · 170 阅读 · 0 评论 -
ZK java操作 详解
它是一个为分布式应用提供一致性服务的软件。 Zookeeper 作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题,它能提供基于类似于文件系统的目录节点树方式的数据存储, Zookeeper 作用主要是用来维护和监控存储的数据的状态变化,通过监控这些数据状态的变化,从而达到基于数据的集群管理。 java 操作 //创建zk连接 ZooKeeper zk = new ZooKee...原创 2019-12-11 16:31:05 · 353 阅读 · 0 评论 -
浅析volatile
1.内存可见性 volatile是Java提供的一种轻量级的同步机制,同synchronized相比(synchronized通常称为重量级锁),volatile更轻量级,相比使用synchronized所带来的庞大开销,倘若能恰当的合理的使用volatile,自然是美事一桩。 Java内存模型 为什么出现这种情况呢,我们需要先了解一下JMM(java内存模型) java虚拟机有自己的内存模型(J...原创 2019-11-25 14:49:57 · 180 阅读 · 0 评论