java-并发
Sasukeer
有兴趣的伙伴一起交流!
个人QQ:1025276839
展开
-
java-初识多线程(1)
Thread And RunnableThread和Runnable是在java中比较简单的多线程实现方式,也是早期的多线程相关的API。例如:public static void main(String[] args) { Thread thread = new Thread(new Runnable() { public vo...原创 2018-08-05 15:50:02 · 208 阅读 · 2 评论 -
java多线程---原子类分析
多线程原子类解析什么是原子类原子性操作:指一系列的操作为一个单位,不可分割,要么全部成功,要不全部不成功。提到原子类可能会联想到volatile关键字,但是这2者之间是完全不同的。volatile保持了内存的可见性,但是不适用于以下两种情况:写入变量值依赖当前值时。比如 ++a;读写变量值时已经加锁。加锁本身已经解决了内存变量可见性的问题,所以不需要volatile;如何解决原...原创 2019-02-06 20:51:31 · 186 阅读 · 0 评论 -
java多线程---ReentrantLock源码分析
ReentrantLock源码分析基础知识复习synchronized和lock的区别synchronized是非公平锁,无法保证线程按照申请锁的顺序获得锁,而Lock锁提供了可选参数,可以配置成公平锁,也可以配置成非公平锁。通常来说,非公平锁的效率比公平锁要高。一个线程使用syn获取锁,除非该线程成功获取到锁,否则将一直阻塞住。而Lock锁提供了lockInterruptibly()接...原创 2019-02-21 17:41:32 · 158 阅读 · 1 评论 -
java多线程---CopyOnWriteArrayList解析
CopyOnWriteArrayListList是java三大集合中的一个,最最常见的就是ArrayList和LinkedList。简单来讲,ArrayList是数组的数据格式,当它不发生扩容的情况下,add的速度是比较快的。而LinkedList是一个双向链表的数据格式,不存在对容器的限定等等。ArrayList和Vector的区别Vector是线程安全的集合类,ArrayList并不是...原创 2019-02-12 12:05:53 · 248 阅读 · 0 评论 -
java多线程---TheadLocal分析
ThreadLocal 分析ThreadLocal 作用ThreadLocal 可以看做是一个线程的副本,每个线程中的ThreadLocal都是不一样的。访问ThreadLocal就是在访问只属于线程自己的变量。那么,这个是怎么做到,每个线程都有自己的ThreadLocal?看下面2个方法set public void set(T value) { Thread t = Threa...原创 2019-03-05 19:37:34 · 376 阅读 · 0 评论 -
java多线程---synchronizedsynchronized分析
synchronized分析使用方法1、修饰方法public synchronized void test(){ }2、修饰对象(锁定的为什么一定高要是对象?)public void test2(){//Todo synchronized (this){ } //todo}//由于是修饰对象,syn的范围由所修饰对象的生...原创 2019-03-03 15:46:34 · 164 阅读 · 0 评论 -
java多线程---线程池ThreadPoolExecutor分析
线程池java中的线程池有很多种,首先来看下其中最基础的一种线程池ThreadPoolExecutor。线程池的作用为,减少创建线程和销毁线程的开销,对线程进行复用。所以看源码之前,提出以下问题:在线程池中,空闲期,线程怎么维持?在使用时,线程池怎么创建线程?怎么控制多个线程的并发保存任务的载体是什么。ThreadPoolExecutor的属性关键属性//ctl这个属性在后面的...原创 2019-03-04 11:17:35 · 310 阅读 · 0 评论 -
ConcurrentHashMap 原理分析
hashMap 在 1.7 和 1.8 中的区别1、 引入了红黑树2、解决了并发环境下,死链的情况(在1.7的rehash中,会进行链表的反转插入,会引发死链问题,java8 中不会,8中是采用修改头部节点的位置来实现)3、1.7 扩容发送在,插入数据之前,会先检查,扩容后插入。 1.8是在插入数据之后,在判断是否需要扩容。4、为什么1.8解决了死链问题还是不安全,在多线程的情况下,可能...原创 2019-07-16 16:35:18 · 328 阅读 · 0 评论