聊聊并发(一)深入分析 Volatile 的实现原理
原文可能无法访问了,如果运气好的话,你还能看到我们对原文的
存档
摘要
LinkedTransferQueue使用追加字节的方式来优化队列的入队和出队性能。这种方式是通过将共享变量追加到64字节来实现的,避免头节点和尾节点加载到同一个缓存行,避免相互锁定。但并不是在使用Volatile变量时都应该追加到64字节,因为在某些场景下不适用,如处理器缓存行非64字节宽或共享变量不会被频繁写。这种优化方式需要处理器读取更多字节的代价,只有在需要避免相互锁定的情况下才适用。