
多线程
虎娃Aa
这个作者很懒,什么都没留下…
展开
-
SimpleDateFormat线程不安全原因和解决方案
在实际开发中,我们都说,simpleDateFormat是线程不安全的,但是具体是什么原因呢,还是看下源码,我们就知道了SimpleDateFormat线程不安全的原因在平时的开发过程中,我们都会写一个DateUtils的类,这个类我们在处理的时候,会进行日期格式的转换,比如 SimpleDateFormat.format(str,pattern);使用上述方法,我们经常会把传入的日期,...原创 2019-09-09 22:15:30 · 519 阅读 · 0 评论 -
线程池
线程池原创 2019-09-16 15:24:28 · 103 阅读 · 0 评论 -
ReentrantLock-可重入锁
文章目录概述类图实现原理1、属性,核心方法核心方法非公平锁和公平锁的两处不同:概述ReentrantLock 可重入锁:ReentrantLock锁在同一个时间点只能被一个线程锁持有;而可重入的意思是,ReentrantLock锁,可以被单个线程多次获取。类图实现原理1、属性,核心方法private final ReentrantLock.Sync sync; /** ...原创 2019-09-20 10:42:55 · 175 阅读 · 1 评论 -
LinkedBlockingQueue队列
文章目录概述概述原创 2019-09-20 10:43:38 · 910 阅读 · 0 评论 -
ThreadLocal的使用场景与原理理解
一、ThreadLocal机制ThreadLocal模式提供一种在线程内共享变量(资源)的机制;也就是 同一个 ThreadLocal 所包含的对象(对ThreadLocal< String >而言即为 String 类型变量),在不同的 Thread 中有不同的副本。二、ThreadLocal的原理ThreadLocal是线程内部的数据存储类,通过它可以指定的线程中存储数...原创 2019-09-20 10:54:43 · 1109 阅读 · 0 评论 -
ArrayBlockingQueue
文章目录概述实现原理1、属性2、构造器3、核心方法ArrayBlockQueue与LinkedBlockQueue的对比不同点相同点概述ArrayBlockingQueue是采用数组实现的有界阻塞线程安全队列。如果向已满的队列继续塞入元素,将导致当前的线程阻塞。如果向空队列获取元素,那么将导致当前线程阻塞。实现原理1、属性 // 存放元素的数组 final Object[] i...原创 2019-09-20 15:25:58 · 235 阅读 · 0 评论 -
volatile关键字理解
文章目录概述实现原理概述各个线程之间的变量更新,如果想让其他线程立即可见,那么需要使用volatitle关键字,故volatile字段是用于线程间通讯的特殊字段。每次读volatile字段都会看到其它线程写入该字段的最新值!也就是说,一旦一个共享变量(成员、静态)被volatile修饰,那么就意味着:a线程修改了该变量的值,则这个新的值对其他线程来说,是立即可见的!实现原理//线程Abo...原创 2019-09-20 18:11:11 · 153 阅读 · 0 评论 -
AQS-AbstractQueuedSynchronizer
文章目录AQS概述AQS概述原创 2019-09-23 17:03:05 · 139 阅读 · 0 评论