摘要:
最近有点空闲时间,看了一下《Netty权威指南》,看到了关于volatile的一段论述: 自己之前纠结过一段时间,这里说一下自己的理解,volatile变量作用有两方面:可见性和防止重排序。这个就不多说了,这里主要说一下volatile变量在什么情况下可以抛弃锁。 首先应该确定一个前提,就是v... 阅读全文
摘要:
不可重复读
在同一事务中,两次读取同一数据,得到内容不同,侧重点在于数据修改
幻读
同一事务中,用同样的操作读取两次,得到的记录数不相同,幻读的侧重点在于两次读取的纪录数量不一致
不可重复读和幻读在概念上有些交叉,对于不可重复读来说,在同一个事务中,如果读取到的记录数量发生变化,也可以看作是一种不可... 阅读全文
摘要:
最近看了一些dubbo的源码,发现里边在使用volatile变量的时候有点问题,代码片段如下,其中initialized变量为volatile类型的boolean变量,这里的目的是想保证init()方法对于单个实例只调用一次,但是在多线程的情况下,完全有可能多个线程都走到if判断的逻辑而且同时还没... 阅读全文