ListenableFuture 并发是一个困难的问题,但是通过使用功能强大且简单的抽象可以显著的简化并发。为了简...[作者空间]
PriorityBlockingQueue PriorityBlockingQueue 是一个支持优先级的无边界阻...[作者空间]
什么是阻塞队列? 阻塞队列与我们平常接触到的普通队列(ArrayList)的最大不同点在于阻塞队列的添加和删除方法...[作者空间]
案例需要自己运行一遍代码看输出结果才能理解得更深刻 Synchronized 方法锁与代码锁 synchroniz...[作者空间]
无锁意味着方法未加锁,直观表现为线程之间存在着交叉执行 非原子操作例如 number++; number = nu...[作者空间]
生产者消费者模型是我们学习多线程知识的一个经典案例,一个典型的生产者消费者模型如下: 这段代码很容易引申出来两个问...[作者空间]
ReentrantLock java.util.concurrent.lock 中的 Lock 是锁的顶层接口,它...[作者空间]
线程的频繁创建在高并发及大数据量时是非常消耗资源的 因此 Java 提供了线程池,Java5 在 java.uti...[作者空间]
ThreadLocal 多线程在并发执行时,需要数据共享,因此才有了 volatile 变量解决多线程数据之间可见...[作者空间]
无论是 Thread 或是 Runnable,在任务执行完成后无法获取返回结果 Callable 与 Runnab...[作者空间]
Java 内存模型 Java 内存模型即 Java Memory Model(JMM),JMM 定义了 Java ...[作者空间]
多线程概述 多线程是指一个进程(执行中的程序)同时运行多个线程(进程中负责程序执行的执行单元),多线程可以协作完成...[作者空间]
前言 SynchronousQueue作为BlockingQueue体系中的一员,它与我们平常使用较多的Array...[作者空间]
前言 今天介绍下volatile关键字,volatile这个关键字可能很多朋友都听说过,或许也都用过。在Java ...[作者空间]
前言 本篇主要介绍Java多线程中的同步,也就是如何在Java语言中写出线程安全的程序,如何在Java语言中解决非...[作者空间]
前言 多线程并发编程是Java编程中重要的一块内容,也是面试重点覆盖区域,所以学好多线程并发编程对我们来说极其重要...[作者空间]
前言 在之前的文章中,已经对ArrayBlockingQueue、LinkedBlockingQueue这两个比较...[作者空间]
前言 在前面的文章ArrayBlockingQueue源码分析中,已经对JDK中的BlockingQueue中的做...[作者空间]
前言 在前面一节JDK线程池(一):体系结构中已经分析了JDK的线程池核心接口的组成,通过那些接口的描述,我们知道...[作者空间]
前言 在以前使用线程池的时候,都是简单的调用API。对于线程池体系结构原理都没有深究,直到最近在看看Netty的线...[作者空间]