NipGeihou's blog NipGeihou's blog
  • Java

    • 开发规范
    • 进阶笔记
    • 微服务
    • 快速开始
    • 设计模式
  • 其他

    • Golang
    • Python
    • Drat
  • Redis
  • MongoDB
  • 数据结构与算法
  • 计算机网络
  • 应用

    • Grafana
    • Prometheus
  • 容器与编排

    • KubeSphere
    • Kubernetes
    • Docker Compose
    • Docker
  • 组网

    • TailScale
    • WireGuard
  • 密码生成器
  • 英文单词生成器
🍳烹饪
🧑‍💻关于
  • 分类
  • 标签
  • 归档

NipGeihou

我见青山多妩媚,料青山见我应如是
  • Java

    • 开发规范
    • 进阶笔记
    • 微服务
    • 快速开始
    • 设计模式
  • 其他

    • Golang
    • Python
    • Drat
  • Redis
  • MongoDB
  • 数据结构与算法
  • 计算机网络
  • 应用

    • Grafana
    • Prometheus
  • 容器与编排

    • KubeSphere
    • Kubernetes
    • Docker Compose
    • Docker
  • 组网

    • TailScale
    • WireGuard
  • 密码生成器
  • 英文单词生成器
🍳烹饪
🧑‍💻关于
  • 分类
  • 标签
  • 归档
  • 设计模式

  • 开发规范

  • 经验分享

  • 记录

  • 快速开始

  • 笔记

    • 多线程与并发

      • 前言
      • 理论基础
      • Java中各种锁的概念
      • 关键字:synchronized
      • 关键字:volatile
      • 关键字:final
      • Java多线程 - 线程池
      • Java多线程 - Block Queue阻塞队列
      • Java多线程 - 辅助类
      • Java多线程 - CompletableFuture
      • Java多线程 - 线程变量传递ThreadLocal
    • JDK

    • Java集合

    • Spring

    • JVM

    • Other

  • 面试题

  • 微服务

  • 踩过的坑

  • Java
  • 笔记
  • 多线程与并发
NipGeihou
2022-02-14

Java多线程 - Block Queue阻塞队列

接口特点:

  • 队列空时,获取阻塞
  • 队列满时,添加阻塞
方法类型 抛出异常 特殊值 阻塞 超时
插入 add(e) offer(e) :boolean put(e) offer(e,time,unit) :boolean
移除 remove() poll() :null take() poll(time,unit) :null
检查 element() paek() 不可用 不可用

实现类:

  • ✨ ArrayBlockingQueue(int capacity) :由数组结构组成的有界阻塞队列(给定大小)
  • ✨ LinkedBlockingQueue(int capacity) :由链表结构组成的有界阻塞队列,默认大小为 Integer.MAX_VALUE
  • DelayQueue(Collection<? extends E> c) :使用优先级队列实现的延迟无界阻塞队列

小结:在多线程领域,所谓阻塞,在某些情况下会挂起线程(即阻塞),一旦条件满足被挂起的线程又会自动被唤起。

上次更新: 2022/12/31, 03:04:26
Java多线程 - 线程池
Java多线程 - 辅助类

← Java多线程 - 线程池 Java多线程 - 辅助类→

最近更新
01
Docker Swarm
04-18
02
安全隧道 - gost
04-17
03
Solana最佳实践
04-16
更多文章>
Theme by Vdoing | Copyright © 2018-2025 NipGeihou | 友情链接
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式