多线程
文章平均质量分 92
多线程
weixin_42412601
后生仔
展开
-
synchronized底层原理
目录1、用户态与内核态2、使用工具查看对象的内存布局3、synchronized字节码4、监视器对象(管程对象或Monitor)1、EntryList阻塞队列2、WaitSet等待集合5、锁升级1、JDK对锁的优化2、锁对象头 - Mark Work部分3、synchornized锁的升级1、偏向锁 https://www.jb51.net/article/183984.htm https://blog.csdn.net/mulinsen77/article/details/88635558 https:/原创 2020-10-07 01:22:52 · 820 阅读 · 1 评论 -
JUC(四)
目录彻底玩转单例模式饿汉式懒汉式双重检测锁模式改进懒汉式 (DCL懒汉式)静态内部类式枚举单例五种实现单例模式的方式的对比单例模式常见场景深入理解CAS 彻底玩转单例模式 饿汉式 public class Hungry { //私有构造函数 private Hungry(){ } private final static Hungry HUNGRY=new Hung...原创 2020-04-06 19:28:50 · 577 阅读 · 0 评论 -
JUC(三)
目录同步队列池化技术和线程池的使用线程池的三大方法线程池的七大参数参数描述手动创建线程池四大拒绝策略CPU密集型和IO密集型(调优)四大函数式接口`Stream`流式计算ForkJoin详解`ForkJoin`使用 同步队列 没有容量,进去一个元素,必须等待取出来之后,才能再往里添加一个元素! put添加元素,take取出元素 同步队列与其他的BlockingQueue不一样,Synchronou...原创 2020-04-04 19:42:42 · 750 阅读 · 0 评论 -
JUC(二)
目录List不安全解决方案:1.使用线程安全的Vector2.Collections.synchronizedList(new ArrayList<>())3.List list = new CopyOnWriteArrayList<>(); JUC下的CopyOnWriteArrayList剖析为什么遍历时不用调用者显式加锁Set不安全HashSet底层是什么Map不安全...原创 2020-03-29 17:18:47 · 580 阅读 · 0 评论 -
JUC(一)
juc: java并发包。 进程: 操作系统管理的基本单元。进程包括由操作系统分配的内存空间,包含一个或多个线程。一个进程中可以并发多个线程,每条线程并行执行不同的任务。进程运行直到所有的非守护线程都结束运行后才能结束(一个程序)。 一个进程往往可以包含多个线程,至少包含一个。java默认至少两个main,gc线程。 线程: 进程中一个单一顺序的控制流,并且一个线程不能独立的存在,它必须是进程的...原创 2020-03-22 16:46:39 · 516 阅读 · 0 评论 -
多线程基础(三)
死锁 多个线程各自占有一些共享资源,并且相互等待其他线程占有的资源释放,才能运行,而导致两个或者多个线程都在等待对方释放资源,都停止执行的情形。某一个同步块同时拥有“两个以上对象的锁”时,就可能发生“死锁”的问题。 死锁:多个线程互相拥有对方需要的资源,然后形成僵持。 //死锁:多个线程互相拥有对方需要的资源,然后形成僵持 public class DeadLock { public st...原创 2020-03-17 18:45:28 · 339 阅读 · 0 评论 -
多线程基础(二)
线程方法 线程停止 不推荐使用JDK提供的stop()、destroy()方法而且已废弃。推荐线程自己停止下来,建议使用一个标志为进行终止变量,当flag=false的时候则终止线程进行。 public class TestThreadStop implements Runnable{ //设置一个标志位 private boolean flag=true; @Ove...原创 2020-03-15 22:17:24 · 272 阅读 · 0 评论 -
多线程基础(一)
多线程编程 多线程编程是为了满足程序员编写高效率的程序来达到充分利用 CPU 的目的。 进程与线程 进程:操作系统管理的基本单元。进程包括由操作系统分配的内存空间,包含一个或多个线程。一个进程中可以并发多个线程,每条线程并行执行不同的任务。进程运行直到所有的非守护线程都结束运行后才能结束。 线程:进程中一个单一顺序的控制流,并且一个线程不能独立的存在,它必须是进程的一部分。 线程创建 Java提供...原创 2020-03-15 13:36:27 · 201 阅读 · 0 评论