概述 Java8的两个重大改变,一个是Lambdab表达式,另外一个就是Stream API表达式。Stream是Java8中处理集合的关键抽象概念,它可以对集合进行复杂的查...
消息监听 对于Kafka中Topic的数据消费,我们一般都选择使用消息监听器进行消费,怎么把消息监听器玩出花来呢,那就得看看它所实现的功能了。Spring-Kafka中消息监...
概述 ArrayList使我们从学习Java开始经常使用到的一种集合类,也是我们在面试中经常被面试官提起的一个知识点,仔细阅读ArrayList的源码,深入理解ArrayLi...
概述 对于Java来说万物皆对象,所有的Java对象的最终父类都是Object,所以它们都拥有一组监视器方法,主要包括:wait(),wait(long timeout),n...
概述 在并发编程中,为了解决线程安全问题,我们会高频率的使用独占式锁,一般我们使用java提供的Synchronized关键字或java.util.concurrent中的R...
概述 重入锁ReentrantLock,顾名思义,就是支持重进入的锁,它表示能够支持一个线程对资源的重复加锁。除此之外,该锁还支持获取锁时的公平和非公平选择。Synchron...
概述 在前面我们初步认识了一下lock与AQS的基础内容,在同步组件的实现中,AQS是核心部分,我们通过AQS提供的模板方法来实现自定义同步组件,而底层的同步状态修改、阻塞线...
1. AQS简介 原创文章&经验总结&从校招到A厂一路阳光一路沧桑 详情请戳www.codercc.com 在上一篇文章中我们对lock和AbstractQueuedSync...
概述 并发编程的目的是为了让程序运行的更快,但并不是启动更多的线程就能让程序最大限度地并发执行。如果想通过多线程使程序运行更快,那么将会面临很多挑战。 上下文切换 即使单核处...
概述 在学习java并发编程的过程中,java.util.concurrent包是我们需要学习和理解的关键之一,concurrent包的作者Doug Lea在其中为我们提供了...
线程安全的两大核心 我们知道,出现线程安全的问题一般是因为主内存和线程工作内存数据不一致和重排序导致的,而解决线程安全问题,最重要的就是理解这两种问题是怎么来的,而理解他们的...
原创文章&经验总结&从校招到A厂一路阳光一路沧桑 详情请戳www.codercc.com 1. 三大性质简介 在并发编程中分析线程安全的问题时往往需要切入点,那就是两大核心:...
概述 先了解一下基本概念。线程是操作系统能够进行运算调度的最小单位。它被包含在进程中,是进程中的实际运作单位。一条线程指的是进程中一个单一顺序的控制流,一个进程中可以并发多个...
1 前段时间的甲骨文裁员事件,可谓吸睛无数。 5月初,《21 世纪经济报道》称,甲骨文公司召开全员大会,确定对中国研发中心进行裁员调整,被裁退的员工将普遍获得「N(工作年限)...