首页
学习
活动
专区
工具
TVP
发布

JAVA并发编程

主要分享线程安全、synchronized、volatile、JUC、CAS、AQS、阻塞队列、线程池等并发技术
专栏成员
13
文章
1704
阅读量
12
订阅数
JAVA并发编程系列(13)Future、FutureTask异步小王子
时间好快,一转眼不到一个月时间,已经完成分享synchronized、volatile、CAS、AQS、ReentrantLock、Semaphore、CountDownLatch、CyclicBarrier、并发锁、Condition、线程池、ThreadLocal等多个核心基础原理和案例剖析。
拉丁解牛说技术
2024-09-30
1360
JAVA并发编程系列(12)ThreadLocal就是这么简单|建议收藏
很多人都以为TreadLocal很难很深奥,尤其被问到ThreadLocal数据结构、以及如何发生的内存泄漏问题,候选人容易谈虎色变。 日常大家用这个的很少,甚至很多近10年资深研发人员,都没有用过ThreadLocal。本文由浅入深、并且才有通俗易懂方式全面分析ThreadLocal的应用场景、数据结构、内存泄漏问题。降低大家学习啃骨头的心理压力,希望可以帮助大家彻底掌握并应用这个核心技术到工作当中。
拉丁解牛说技术
2024-09-25
1220
JAVA并发编程系列(11)线程池底层原理架构剖析
之前我们用了10篇文章详细剖析了synchronized、volatile、CAS、AQS、ReentrantLock、Semaphore、CountDownLatch、CyclicBarrier、并发锁、Condition等各个核心基础原理,今天开始我们说说并发领域的各种工具包还有应用场景。
拉丁解牛说技术
2024-09-24
1470
JAVA并发编程系列(10)Condition条件队列-并发协作者
同样今天的分享,我们不纸上谈兵,也不空谈八股文。以实际面经、工作实战经验进行开题,然后再剖析核心源码原理。
拉丁解牛说技术
2024-09-23
1130
JAVA并发编程系列(9)CyclicBarrier循环屏障原理分析
之前我们在系列(8)《CountDownLatch核心原理》,实现过拼团场景。但是CountDownLatch里调用countDown()方法后,线程还是可以继续执行后面的代码,没有真正的阻塞。
拉丁解牛说技术
2024-09-20
1160
JAVA并发编程系列(8)CountDownLatch核心原理
我们利用CountDownLatch倒计时的特性,多线程并发条件下,多线程可以调用CountDownLatch.countDown()方法进行减1,然后等候信号的线程调用CountDownLatch.await()方法,等待CountDownLatch倒数为0,会被唤醒继续执行。
拉丁解牛说技术
2024-09-19
1400
JAVA并发编程系列之Semaphore信号量剖析
其实,面对这样的面试要求,现实中的头部大厂,甚至一些普通大厂都是设计了很多编程题考查大家的基础功底。但是都不会很复杂,毕竟时间有限,往往都是经典题目,涉及一个或多个核心关键技术点。
拉丁解牛说技术
2024-09-18
950
JAVA并发编程ReentrantLock核心原理剖析
ReentrantLock英文翻译以及顾名思义:可重入锁。之前文章说过,还有synchronized也是可重入锁。竟然JDK最开始有了synchronized这个可重入锁,而且JDK1.6之后也对synchronized进行锁优化,性能堪比JUC里的其他Lock()。为什么还提供了ReentrantLock呢?在《JAVA并发编程volatile核心原理》文中开头我们就简单的列了synchronized的几个缺点,包括:阻塞时间过长,不可中断、是非公平锁。
拉丁解牛说技术
2024-09-12
1260
JAVA并发编程AQS原理剖析
AQS全称是:AbstractQueuedSynchronizer,队列同步器。这个类在JUC包java.util.concurrent.locks下面。
拉丁解牛说技术
2024-09-10
1280
JAVA并发编程-一文看懂全部锁机制
曾几何时,面试官问:java都有哪些锁?小白,一脸无辜:用过的有synchronized,其他不清楚。面试官:回去等通知!
拉丁解牛说技术
2024-09-09
1780
JAVA并发编程JUC包之CAS原理
首先,Atomic包,原子操作类,提供了用法简单、性能高效、最重要是线程安全的更新一个变量。支持整型、长整型、布尔、double、数组、以及对象的属性原子修改,支持种类非常丰富。
拉丁解牛说技术
2024-09-06
1210
JAVA并发编程volatile核心原理
上文说到synchronized,JAVA并发编程synchronized全能王的原理,虽然被评为并发全能王,不过用起来也是格外注意,不能搞大力出奇迹那一套,容易出现性能问题。比如synchronized是无法控制阻塞时长,阻塞不可中断问题;以及锁范围,修饰方法或代码块,要精细,仅修饰需要并发控制部分,降低锁粒度。文末再总结一下,synchronized和volatile的区别,先进入正题,聊聊正主:volatile。
拉丁解牛说技术
2024-09-05
1260
JAVA并发编程synchronized全能王的原理
说到JAVA并发,相信很多人第一印象想到的就是synchronized,然后就是volatile、JUC、CAS、线程池、AQS、阻塞队列等等这些关键字工具类、原理思想。但这些都离不开并发编程的三大特性:原子性、可见性、有序性。
拉丁解牛说技术
2024-09-03
1560
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档