JUC
文章平均质量分 89
想睡觉的小码农
我这个人很懒,什么也没有说
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
线程内部存储ThreadLocal
1、是什么? 并发访问共享变量的时候可以考虑加锁控制(synchornized、Lock锁、volatile+cas)这种方式对内存友好,不用额外的开辟线程内的存储空间,但是并发的时候要互斥访问对效率不太友好; 早在JDK1.2的就提供了ThreadLocal的线程内部存储机制来解决并发访问题。设计思想是在线程内部存储共享变量的副本,在线程存活的过程中可以随时随意场景中取到自己保存的变量副本。 2、怎么使用? import java.util.concurrent.TimeUnit; publi原创 2021-09-17 16:41:26 · 679 阅读 · 1 评论 -
设计模式-单例模式
单例模式是一种常用的设计模式,并且是面试中常问的一种设计模式,这篇文章就整理一下本人学习到的几种单例模式的设计 1、饿汉式 饿汉式,顾名思义就是一上来就创建单例实例。 class HungerSingleton{ //类加载时就实例化 private static final HungerSingleton instance= new HungerSingleton(); //构造函数私有化 private HungerSingleton(){ }原创 2021-07-08 00:12:20 · 664 阅读 · 0 评论 -
JUC线程池
目录 1、线程池是什么? 2、为什么要使用线程池? 3、JUC中线程池的三大线程池 3.1获取单一线程的线程池 newSingleThreadExecutor() 3.2获取固定数量线程的线程池 newFixedThreadPool(int nThreads) 3.3获取线程数量可伸缩的线程池Executors.newCachedThreadPool() 4、获取线程池的7大参数 5、自定义一个线程池 6、四种拒绝策略 6.1AbortPolicy() 6.2DiscardPolic.原创 2021-07-06 22:36:47 · 265 阅读 · 0 评论
分享