摘要:
一、DelayQueue的take()方法底层原理 DelayQueue 的 take 方法是其核心方法之一,用于从队列中获取并移除延迟时间到期的元素。如果队列为空或没有延迟到期的元素,调用 take 方法的线程会阻塞,直到有元素到期 1、take 方法的核心逻辑 take 方法的主要逻辑可以分为以 阅读全文
posted @ 2025-02-20 21:40
jock_javaEE
阅读(52)
评论(0)
推荐(0)
摘要:
一、DelayQueue 底层原理 DelayQueue是一种本地延迟队列,比如希望我们的任务在5秒后执行,就可以使用DelayQueue实现。常见的使用场景有: 订单10分钟内未支付,就取消。 缓存过期后,就删除。 消息的延迟发送等。 但是DelayQueue是怎么使用的?底层原理是什么样的?如果 阅读全文
posted @ 2025-02-20 21:04
jock_javaEE
阅读(153)
评论(0)
推荐(0)
摘要:
一、PriorityQueue作用和源码 PriorityQueue跟前几个阻塞队列不一样,并没有实现BlockingQueue接口,只是实现了Queue接口,Queue接口中定义了几组放数据和取数据的方法,来满足不同的场景 二、PriorityQueue类结构 public class Prior 阅读全文
posted @ 2025-02-20 15:06
jock_javaEE
阅读(47)
评论(0)
推荐(0)
摘要:
一、SynchronousQueue底层实现原理剖 SynchronousQueue(同步移交队列),队列长度为0。作用就是一个线程往队列放数据的时候,必须等待另一个线程从队列中取走数据。同样,从队列中取数据的时候,必须等待另一个线程往队列中放数据 二、SynchronousQueue用法 先看一个 阅读全文
posted @ 2025-02-20 02:14
jock_javaEE
阅读(92)
评论(0)
推荐(0)
摘要:
一、SynchronousQueue的put方法底层源码 SynchronousQueue 的 put 方法用于将元素插入队列。由于 SynchronousQueue 没有实际的存储空间,put 方法会阻塞,直到有消费者线程调用 take 方法移除元素 1、put 方法的作用 将元素插入队列。 如果 阅读全文
posted @ 2025-02-20 00:29
jock_javaEE
阅读(39)
评论(0)
推荐(0)

浙公网安备 33010602011771号