编程语言 带你分析阻塞队列的源码实现 阻塞队列阻塞队列是一种队列,一种可以在多线程环境下使用,并且支持阻塞等待的队列。从5.0开始,JDK在java.util.concurrent包里提供了阻塞队列的实现。尽管JDK中已经包含了阻塞队列的官方实现,但是熟悉其背后的原理还是很有帮助的。本文我们就分析几个BlockingQueue常用的实现类源码。 2020-03-01 浏览(2,715) 评论(0) 阅读全文
编程语言 带你分析线程的状态及线程通信机制 多线程编程一直是普通程序员进阶为高级程序员的必备技能之一!他很难,难就难在难以理解、难以调试,出现了bug很难发现及排查。他很重要,因为我们可能随时都面对着线程的切换、调度,只是这些都由CPU来帮我们完成我们无法感知。 2020-02-22 浏览(2,676) 评论(0) 阅读全文
编程语言 带你理清Thread、Runnable、Callable、FutureTask之间千丝万缕的联系 多线程是指从软件或者硬件上实现多个线程并发执行的技术。具有多线程能力的计算机因有硬件支持而能够在同一时间执行多于一个线程,进而提升整体处理性能。Java自从1.5开始,就提供了Callable和Future,通过它们可以在任务执行完毕之后得到任务执行结果。今天我们就来讨论一下Thread、Runable、Callable、FutureTask之间的联系! 2019-05-22 浏览(4,463) 评论(2) 阅读全文