Fork me on GitHub
摘要: 从 JDK 1.7 开始,引入了一种新的 Fork/Join 线程池框架,它可以把一个大任务拆成多个小任务并行执行,最后汇总执行结果。 阅读全文
posted @ 2024-03-18 10:59 程序员志哥 阅读(281) 评论(0) 推荐(1) 编辑
摘要: 在上篇文章中,我们介绍了Future相关的用法,使用它可以获取异步任务执行的返回值。我们再次回顾一下Future相关的用法。 阅读全文
posted @ 2024-03-15 09:31 程序员志哥 阅读(289) 评论(0) 推荐(3) 编辑
摘要: 在前几篇线程系列文章中,我们介绍了线程池的相关技术,任务执行类只需要实Runnable接口,然后交给线程池,就可以轻松的实现异步执行多个任务的目标,提升程序的执行效率,比如如下异步执行任务下载。 阅读全文
posted @ 2024-03-14 10:52 程序员志哥 阅读(274) 评论(0) 推荐(1) 编辑
摘要: 在之前的文章中,我们介绍了 ReentrantLock、ReadWriteLock、CountDownLatch、CyclicBarrier、Semaphore、ThreadPoolExecutor 等并发工具类的使用方式,它们在请求共享资源的时候,都能实现线程同步的效果。 阅读全文
posted @ 2024-03-13 09:32 程序员志哥 阅读(225) 评论(0) 推荐(1) 编辑
摘要: 在之前的多线程系列文章中,我们陆陆续续的介绍了Thread线程类相关的知识和用法,其实在Thread类上还有一层ThreadGroup类,也就是线程组。 阅读全文
posted @ 2024-03-12 14:32 程序员志哥 阅读(249) 评论(0) 推荐(1) 编辑
摘要: 在 Java 的java.util.concurrent包中,除了提供底层锁、并发同步等工具类以外,还提供了一组原子操作类,大多以Atomic开头,他们位于java.util.concurrent.atomic包下。 阅读全文
posted @ 2024-03-11 09:31 程序员志哥 阅读(227) 评论(0) 推荐(0) 编辑
摘要: 在前几篇文章中,我们讲到了线程、线程池、BlockingQueue 等核心组件,其实 JDK 给开发者还提供了比synchronized更加高级的线程同步组件,比如 CountDownLatch、CyclicBarrier、Semaphore、Exchanger 等并发工具类。 阅读全文
posted @ 2024-03-07 13:48 程序员志哥 阅读(533) 评论(0) 推荐(1) 编辑
摘要: 虽然 Java 对线程的创建、中断、等待、通知、销毁、同步等功能提供了很多的支持,但是从操作系统角度来说,频繁的创建线程和销毁线程,其实是需要大量的时间和资源的。 阅读全文
posted @ 2024-03-06 09:53 程序员志哥 阅读(474) 评论(0) 推荐(2) 编辑
摘要: 在 Java 的并发包里面还有一个非常重要的接口:BlockingQueue。 阅读全文
posted @ 2024-03-05 09:34 程序员志哥 阅读(586) 评论(0) 推荐(2) 编辑
摘要: 在 Java 多线程编程中,还有一个非常重要的设计模式,它就是:生产者和消费者模型。 阅读全文
posted @ 2024-03-04 16:06 程序员志哥 阅读(311) 评论(0) 推荐(3) 编辑