摘要: 等待通知机制的实现 需求分析 实验内容 设计一个任务队列,多个任务线程同时从队列中取出任务进行处理。当任务队列为空时,任务线程需要进入等待状态,直到新的任务到达。当有新的任务到达时,需要通知其中一个任务线程来处理新任务。 基于 Object Monitor 实现 实验目的 学习如何使用等待通知机制来 阅读全文
posted @ 2023-10-31 16:20 Ba11ooner 阅读(10) 评论(0) 推荐(0) 编辑
摘要: Executor 框架的使用 ThreadPoolExecutor 简介 Executor 机制实现了工作单元和执行机制的分离 ThreadPoolExecutor 实现了 Executor 接口,是 Java 线程池的根本实现类之一。它提供了更丰富的配置参数,例如核心线程数、最大线程数、线程空闲时 阅读全文
posted @ 2023-10-31 16:20 Ba11ooner 阅读(6) 评论(0) 推荐(0) 编辑
摘要: JUC 并发工具类的使用 CountDownLatch 简介 CountDownLatch 是Java并发包中的一个基本类,它可以用来在多个线程间同步操作。 其主要功能是允许一个或多个线程等待,直到其他线程完成它们的操作后再继续执行。 CountDownLatch 是通过一个计数器实现的,计数器的初 阅读全文
posted @ 2023-10-31 16:20 Ba11ooner 阅读(9) 评论(0) 推荐(0) 编辑
摘要: JUC 原子操作类的使用 实验目的 掌握Java原子类的使用方法,了解原子类在多线程环境下的特点和使用场景。 实验过程 导入Java原子类的库 创建AtomicInteger对象 使用原子方法对count进行操作 实验参考代码 public class AtomicExample { public 阅读全文
posted @ 2023-10-31 16:20 Ba11ooner 阅读(4) 评论(0) 推荐(0) 编辑
摘要: JUC 并发容器和框架的使用 ConcurrentHashmap 简介 线程安全的哈希表,Hashmap 在 多线程环境下的替代 实验 实验目的:了解并发容器 ConcurrentHashmap 的使用方法 实验内容: 基础:直接使用 Thread 实现 多个线程同时往ConcurrentHashM 阅读全文
posted @ 2023-10-31 16:20 Ba11ooner 阅读(8) 评论(0) 推荐(0) 编辑
摘要: 同步组件的开发 Lock 🆚 AQS Lock 相当于提供了一套规范的锁方法接口,锁最终实现由 AQS 负责 graph LR 自定义锁 --implement--> Lock -.依赖-.-> 自定义Sync --extends--> AQS Lock 接口 AQS Lock 接口是Java提供 阅读全文
posted @ 2023-10-31 16:20 Ba11ooner 阅读(10) 评论(0) 推荐(0) 编辑