首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
并发
订阅
yison44520
更多收藏集
微信扫码分享
微信
新浪微博
QQ
11篇文章 · 0订阅
万字长文 | 16张图解开AbstractQueuedSynchronizer
前言Java并发编程系列第四篇AbstractQueuedSynchronizer,文章风格依然是图文并茂,通俗易懂,本文带读者们深入理解AbstractQueuedSynchronizer设计思想。
死磕 java同步系列之AQS终篇(面试)
AQS的全称是AbstractQueuedSynchronizer,它的定位是为Java中几乎所有的锁和同步器提供一个基础框架。 在之前的章节中,我们一起学习了ReentrantLock、ReentrantReadWriteLock、Semaphore、CountDownLat…
JAVA中各种锁介绍
这三种锁特指synchronized锁的状态,通过对象头中的mark work字段表示锁状态。 自始至终,对这把锁都不存在竞争,只需要做个标记,这就是偏向锁,每个对象都是一个内置锁(内置锁是可重入锁),一个对象被初始化后,还没有任何线程来获取它的锁时,那么它就是可偏向的,当有线…
Java并发总结
最重要的区别是sleep方法不会释放锁,而wait方法会释放锁。 wait:wait方法需要在同步块或同步方法中才能被调用,否则会抛出异常,调用wait方法的线程需要被notify或notifyAll来唤醒,又或者是到了超时时间(如果设置了超时)自动唤醒,当调用wait的线程被…
保姆级教学,22张图揭开ThreadLocal
图解方式来通关ThreadLocal,同时希望你们有一定的JVM 基础,这样食用起来会更香。 相信大伙对 ThreadLocal 并不陌生,工作中常用,同时也是面试高频题,但是大部分人对 ThreadLocal 的理解可能只是「线程的本地变量,Map结构」,看完本文让大伙真正理…
基础篇:异步编程不会?我教你啊!CompletableFuture(JDK1.8)
以前需要异步执行一个任务时,一般是用Thread或者线程池Executor去创建。如果需要返回值,则是调用Executor.submit获取Future。但是多个线程存在依赖组合,我们又能怎么办?可使用同步组件CountDownLatch、CyclicBarrier等;其实有简…
精通高并发与多线程,却不会用ThreadLocal?
大家好,我是小菜,一个渴望在互联网行业做到蔡不菜的小菜。可柔可刚,点赞则柔,白嫖则刚! ThreadLocal 类是用来提供线程内部的局部变量。这种变量在多线程环境下访问(get 和 set 方法访问)时能保证各个线程的变量相对独立于其他线程内的变量。 ThreadLocal …
反制面试官 | 14张原理图 | 再也不怕被问 volatile!
这一篇也算是Java并发编程的开篇,看了很多资料,但是轮到自己去整理去总结的时候,发现还是要多看几遍资料才能完全理解。还有一个很重要的点就是,画图是加深印象和检验自己是否理解的一个非常好的方法。 这是一份精心总结的Java内存模型思维导图,拿去不谢。 JMM是Java内存模型,…
由String,String Builder,String Buffer 引起的面试惨案
String,StringBuilder,StringBuffer的区别是啥?这个面试题估计每个JAVA都应该碰到过吧。依稀记得第一次面试的时候,面试官问我这个问题时,心想着能有啥区别不都是拼接字符串嘛。深入了解这个问题后,发现并不简单? 小宅:面试官你好,我是不一样的科技宅。…
Java并发 - atomic
原子类的作用和锁类似,是为了保证并发情况下线程安全。不过原子类相比于锁,有一定的优势: AtomicReference : AtomicReference类的作用,和AtomicInteger并没有本质区别,AtomicInteger可以让一个整数保证原子性,而AtomicRe…