自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 Java并发工具类(JUC)汇总(五)线程池

文章目录五、线程池1.简介2.实现原理3.结构图4.ThreadPoolExector4.1 源码解析4.2 流程说明4.3 线程池关闭4.3.1 状态迁移4.3.2 优雅关闭4.3.3 shutdown()与shutdownNow()区别4.4 线程池监控4.5 使用样例5.ScheduledThreadPoolExecutor5.1 简介5.2 源码解析5.3 核心方法5.3.1 延迟执行5.3.2 周期性执行5.4 使用样例6.Future6.1 简介6.2 方法6.3 线程池使用6.4 Future

2021-08-02 16:28:41 937

原创 Java并发工具类(JUC)汇总(四)原子类

文章目录四、原子类1.原子基本类型1.1 简介1.2 方法介绍1.3 使用样例2.原子数组类型2.1 简介2.2 方法介绍2.3 使用样例3.原子引用类型3.1 简介3.2 方法介绍3.3 使用样例4.原子字段类型4.1 简介4.2 方法介绍4.3 使用样例四、原子类1.原子基本类型1.1 简介  原子类的基本实现原理是利用volatile保证可见性,CAS操作保证原子性及有序性,底层使用Unsafe类(提供直接访问系统资源的类,由于可以直接操作内存,往往是不安全的)实现,共有如下三种原子基本

2021-08-02 16:26:10 441

原创 Java并发工具类(JUC)汇总(三)工具类

文章目录三、工具类1.Semaphore1.1 简介1.2 方法介绍1.3 使用样例1.4 注意事项2.CountDownLatch2.1 简介2.2 方法介绍2.3 使用样例3.CyclicBarrier3.1 简介3.2 方法介绍3.3 使用样例3.4 注意事项4.Exchanger4.1 简介4.2 方法介绍4.3 使用样例5.Phaser5.1 简介5.2 方法介绍5.3 使用样例5.3.1 替代CountDownLatch5.3.2 替代CyclicBarrier5.3.3 新特性三、工具类

2021-08-02 16:24:49 317

原创 Java并发工具类(JUC)汇总(二)集合

文章目录二、集合1.BlockingQueue1.1 简介1.2 注意事项1.3 方法介绍1.3.1 插入1.3.2 删除1.3.3 查看1.3.4 其他1.3.5 对比1.4 子类介绍1.4.1 继承类图1.4.2 ArrayBlockingQueue1.4.3 LinkedBlockingQueue1.4.4 PriorityBlockingQueue1.4.5 DelayQueue1.4.6 SynchronousQueue1.4.7 LinkedTransferQueue1.4.8 Blocking

2021-08-02 16:22:37 1263

原创 Java并发工具类(JUC)汇总(一)锁

文章目录一、锁1.锁分类2.无锁技术2.1 比较与交换(Compare And Swap)2.2 写入时复制 (Copy-on-write)2.3 线程本地存储 (Thread Local Storage, TLS)3.JUC中的锁3.1 AbstractQueuedSynchronizer(AQS)3.1.1 定义3.1.2 核心思想3.1.2.1 记录同步状态(state变量)3.1.2.2 记录当前持有锁的线程3.1.2.3 支持阻塞/唤醒操作3.1.2.4 阻塞队列(CLH)3.1.3 资源共享方式

2021-08-02 16:19:06 1123

原创 并发编程基础汇总

文章目录前言一、并发编程三要素1.定义2.可见性2.1 可见性问题2.2 可见性问题根源3.原子性3.1 原子性问题3.2 原子性问题根源4.有序性4.1 有序性问题4.2 重排序分类4.3 有序性问题根源二、并发问题解决(Java内存模型)1.定义2.volatile2.1 语义2.2 作用范围3.synchronized3.1 语义3.1 作用范围4.final4.1 语义4.2 作用范围5.Happens-Before5.1 作用范围5.2 语义5.3 作用2.读入数据总结2.3 解决可见性问题3.3

2021-07-16 02:00:32 1716

原创 并发理论基础

一、什么是线程、进程1、进程、线程的定义进程:程序的运行实例(程序的一次执行),是资源分配的基本单位。线程:进程实际执行的细分,将任务切分成可供CPU调度的多个单位。2、进程、线程的关系进程是线程的容器,即同一个进程可以包含多个线程,多个线程可以共享同一进程间的资源。例如:可以把厨房比作线程,厨房内的厨师比作进程,要实现的功能是做菜,一个厨房至少要拥有一个厨师才可以完成做菜的功能,也可以有多个厨师来分别执行洗菜、切菜、炒菜的工作,同时厨师间协作所需的锅碗瓢盆归属于同一个厨房,

2021-07-12 20:38:19 128

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除