1. 首页
  2. 数据库
  3. 其它
  4. 手写一个线程安全的非阻塞队列并且实现入队出队方法

手写一个线程安全的非阻塞队列并且实现入队出队方法

上传者: 2020-12-31 16:23:21上传 PDF文件 47.15KB 热度 8次
实现思路:利用单向链表来保存队列的数据,在往队列中添加元素的时候,新建一个节点,加入到队尾,加入到队尾的操作,利用CAS原理加乐观锁,另外,还需要将新加的节点设置为新的队尾,此步操作也需要利用CAS,head与tail变量用volatile修饰,保证多线程环境下的线程可见性。 相关代码如下: import sun.misc.Unsafe; import java.lang.reflect.Field; public class MyLinkQueue { //头节点 private volatile Node head; //尾节点 private volati
下载地址
用户评论