首页
首页
沸点
课程
直播
活动
竞赛
商城
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Java 多线程
AntBlack
创建于2021-05-13
订阅专栏
Java 多线程的源码分析 , 功能解析 . 该系列会持续迭代和完善 . 致力于快速使用和性能分析
等 36 人订阅
共14篇文章
创建于2021-05-13
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
AntBlack
1年前
后端
Java
Java 多线程 : JUC 并发工具原理
之前说 AQS 的时候曾经提到过这几个类 , 这几个类有一些各自的特点 , 很符合特定的场景 , 之前在生产上用的还挺舒服
1.0w
101
8
AntBlack
2年前
Java
Java 多线程 : 不一样的锁
锁是整个多线程中出现最频繁的概念之一 , 我们在之前细说 synchronized 中曾经简单说了一下 , 这里我们试着完善整个体系 , 来说说其他的几个类 . 一 . Lock 接口 Lock 接口是一切的基础 , 它抽象类一种用于控制多个线程对共享资源的访问的工具 . 成功…
1585
25
评论
AntBlack
2年前
Java
Java 多线程 : 并行处理 Fork Join
一 . Fork / Join 入门 Fork / Join 的执行是先把一个大任务分解(fork)成许多个独立的小任务,然后起多线程并行去处理这些小任务。处理完得到结果后再进行合并(join)就得到我们的最终结果。 该算法会把分解的小任务放在多个双端队列中,而线程在队列的头和…
1998
27
评论
AntBlack
2年前
Java
Java 多线程 : 迟来的 Future
一 . Future 是什么 当 Get 获取时业务还未处理完 , 当前线程会阻塞 , 直到业务处理完成 . 所以需要注意 future 的任务安排 它有启动和取消运算、查询运算是否完成和取回运算结果等方法。 二 . Future 使用 三 . Future 问答 四 . Fu…
2527
38
评论
AntBlack
2年前
Java
Java 多线程 : 简简单单原子类
原子类继承于 Number 接口 , 归属于java.util.concurrent.atomic 包中 , 原子类的主要作用是为了解决 synchronized 处理原子操作 资源消耗过高 的问题 ,原子类的CAS 基于 Unsafe 实现 . 一. 原子类的简述 原子类适用…
1402
21
评论
AntBlack
2年前
Java
Java 多线程 : 勉强弄懂了AQS
一 . AQS 基础 队列头节点称作“哨兵节点”或者“哑节点”,不与任何线程关联。 AQS 使用一个int 的 status 来表示同步状态, 同步状态重要目的是用于跟踪线程是否应该阻塞 , 当它的前身释放时,一个节点被通知。否则,队列中的每个节点都充当一个特定通知样式的监视器…
1402
25
评论
AntBlack
2年前
Java
Java 多线程 :漫谈多线程模型
一 . happens-before 模型 如果一个操作 happens-before 另一个操作,那么第一个操作的执行结果,将对第二个操作可见,而且第一个操作的执行顺序,排在第二个操作之前。 两个操作之间存在 happens-before 关系,并不意味着一定要按照 happ…
1253
20
2
AntBlack
2年前
Java
后端
Java 多线程 : 阻塞队列 没啥好说的
一 . 阻塞队列简述 在队列为空时,获取元素的线程会等待队列变为非空。 当队列满时,存储元素的线程会等待队列可用。 阻塞队列就是生产者存放元素的容器,而消费者也只从容器里拿元素。 二. ArrayBlockingQueue 三 . DelayQueue 四 . Synchron…
999
17
评论
AntBlack
2年前
Java
Java 多线程 : 真想聊清楚线程池
一 . 线程池简介 任务队列是一个阻塞队列,保存待执行的任务。 工作者线程主体就是一个循环,循环从队列中接受任务并执行。 降低资源消耗。 通过重复利用已创建的线程降低线程创建和销毁造成的消耗。 提高响应速度。 当任务到达时,任务可以不需要的等到线程创建就能立即执行。 提高线程的…
2399
40
1
AntBlack
2年前
Java
后端
Java 多线程 : 漫谈 CAS
一 . CAS 简介 jdk5增加了并发包java.util.concurrent.*,其下面的类使用CAS算法实现了区别于synchronouse同步锁的一种乐观锁。 CAS是一种无锁算法,CAS有3个操作数,内存值V,旧的预期值A,要修改的新值B。 二 . CAS 的缺陷 …
2544
38
1
AntBlack
2年前
Java
后端
Java 多线程 : 细说线程状态
一. 线程等待 二. 线程通知 三. 线程中断 四. 线程死锁 五. 线程热锁 六. 线程的状态及转换 七. 状态转换的原理
1312
21
评论
AntBlack
2年前
Java
Java 多线程 : 漫谈 Volatile
一 . volatile 基础 二 . volatile 深入知识点 三 . volatile 和 synchronized 的区别 volatile 本质是在告诉 JVM 当前变量在寄存器(工作内存)中的值是不确定的,需要从主存中读取。synchronized 则是锁定当前变…
1423
20
2
AntBlack
2年前
Java
后端
Java多线程 : 细说 synchronized
synchronized 是一种重量级锁 , 可以保证在同一个时刻,只有一个线程可以执行某个方法或者某个代码块 . 3 若线程调用 wait() 方法,将释放当前持有的monitor,owner变量恢复为null,count自减1,同时该线程进入 WaitSet集合中等待被唤醒…
1792
25
2
AntBlack
2年前
Java
Java多线程(一) : 快查手册
JavaJVM篇Java多线程:漫谈VolatileJava多线程:漫谈CASJava多线程:阻塞队列没啥好说的快查手册JVM参数变量JVM多线程的变量同步
1476
18
评论