并发编程
文章平均质量分 90
Java高并发与多线程
geekc
致力于java开发
展开
-
并发编程知识脑图(持续更新中...)
本人整理的并发编程相关的思维导图,有需要原图的可以登录ProcessOn进行克隆,克隆地址为:https://www.processon.com/view/link/5e9eb841f346fb177b8925d3原创 2020-04-21 17:10:21 · 427 阅读 · 0 评论 -
线程状态
个人整理的线程状态之间的转换图,如需要原图,请登录ProcessOn进行克隆,克隆地址:https://www.processon.com/view/link/5e8df1021e0853703598bfb6原创 2020-04-19 17:20:42 · 192 阅读 · 0 评论 -
Synchronized关键字和锁升级,详细分析偏向锁和轻量级锁的升级
一、Synchronized使用场景Synchronized是一个同步关键字,在某些多线程场景下,如果不进行同步会导致数据不安全,而Synchronized关键字就是用于代码同步。什么情况下会数据不安全呢,要满足两个条件:一是数据共享(临界资源),二是多线程同时访问并改变该数据。例如:public class AccountingSync implements Runnable{...转载 2020-04-10 14:22:19 · 123 阅读 · 0 评论 -
AtomicReference 原子引用
概述:AtomicReference和AtomicInteger非常类似,不同之处就在于AtomicInteger是对整数的封装,底层采用的是compareAndSwapInt实现CAS,比较的是数值是否相等,而AtomicReference则对应普通的对象引用,底层使用的是compareAndSwapObject实现CAS,比较的是两个对象的地址是否相等。也就是它可以保证你在修改对象引用时的...转载 2020-04-10 12:50:45 · 385 阅读 · 0 评论 -
Java Thread.join()详解
一、使用方式。join是Thread类的一个方法,启动线程后直接调用,例如:Thread t = new AThread(); t.start(); t.join();二、为什么要用join()方法在很多情况下,主线程生成并起动了子线程,如果子线程里要进行大量的耗时的运算,主线程往往将于子线程之前结束,但是如果主线程处理完其他的事务后,需要用到子线程的处理结果,也就是主线程需要等...转载 2020-04-09 16:46:33 · 382 阅读 · 0 评论 -
ThreadLocal
在阅读Handler源码时发现了这么一个东西,本想直混在其他博客中一笔带过,但仔细想了下这个东西还是蛮重要的,于是开了这篇博客。ThreadLocalthreadlocal使用方法很简单static final ThreadLocal<T> sThreadLocal = new ThreadLocal<T>();sThreadLocal.set()s...转载 2020-04-09 11:15:12 · 166 阅读 · 0 评论