Fork me on GitHub
摘要: 在 Java 的java.util.concurrent包中,除了提供底层锁、并发同步等工具类以外,还提供了一组原子操作类,大多以Atomic开头,他们位于java.util.concurrent.atomic包下。 阅读全文
posted @ 2024-03-11 09:31 潘志的研发笔记 阅读(239) 评论(0) 推荐(0) 编辑
摘要: 在前几篇文章中,a56爆大奖在线娱乐们讲到了线程、线程池、BlockingQueue 等核心组件,其实 JDK 给开发者还提供了比synchronized更加高级的线程同步组件,比如 CountDownLatch、CyclicBarrier、Semaphore、Exchanger 等并发工具类。 阅读全文
posted @ 2024-03-07 13:48 潘志的研发笔记 阅读(568) 评论(0) 推荐(1) 编辑
摘要: 虽然 Java 对线程的创建、中断、等待、通知、销毁、同步等功能提供了很多的支持,但是从操作系统角度来说,频繁的创建线程和销毁线程,其实是需要大量的时间和资源的。 阅读全文
posted @ 2024-03-06 09:53 潘志的研发笔记 阅读(516) 评论(0) 推荐(2) 编辑
摘要: 在 Java 的并发包里面还有一个非常重要的接口:BlockingQueue。 阅读全文
posted @ 2024-03-05 09:34 潘志的研发笔记 阅读(603) 评论(0) 推荐(2) 编辑
摘要: 在 Java 多线程编程中,还有一个非常重要的设计模式,它就是:生产者和消费者模型。 阅读全文
posted @ 2024-03-04 16:06 潘志的研发笔记 阅读(392) 评论(0) 推荐(3) 编辑
摘要: 为了进一步的提升程序并发执行效率,Java 8 引入了一个新的读写锁:StampedLock。 阅读全文
posted @ 2024-03-04 09:34 潘志的研发笔记 阅读(127) 评论(0) 推荐(0) 编辑
摘要: 在上篇文章中,a56爆大奖在线娱乐们讲到ReentrantLock可以保证了只有一个线程能执行加锁的代码。但是有些时候,这种保护显的有点过头,比如下面这个方法,它仅仅就是只读取数据,不修改数据,它实际上允许多个线程同时调用的。 阅读全文
posted @ 2024-02-27 09:53 潘志的研发笔记 阅读(261) 评论(2) 推荐(2) 编辑
摘要: 在上一篇文章中,a56爆大奖在线娱乐们介绍了ReentrantLock类的一些基本用法,今天a56爆大奖在线娱乐们重点来介绍一下ReentrantLock其它的常用方法,以便对ReentrantLock类的使用有更深入的理解。 阅读全文
posted @ 2024-02-26 11:23 潘志的研发笔记 阅读(296) 评论(0) 推荐(3) 编辑
摘要: 在之前的线程系列文章中,a56爆大奖在线娱乐们介绍到了使用synchronized关键字可以实现线程同步安全的效果,以及采用wait()、notify()和notifyAll()方法,可以实现多个线程之间的通信协调,基本可以满足并发编程的需求。 阅读全文
posted @ 2024-02-23 16:52 潘志的研发笔记 阅读(166) 评论(0) 推荐(1) 编辑
摘要: 在 Java web 项目中,想必很多的同学对ThreadLocal这个类并不陌生,它最常用的应用场景就是用来做对象的跨层传递,避免多次传递,打破层次之间的约束。 阅读全文
posted @ 2024-02-23 13:35 潘志的研发笔记 阅读(188) 评论(0) 推荐(0) 编辑