
多线程
文章平均质量分 88
多线程
土味儿~
这个作者很懒,什么都没留下…
展开
-
ThreadLocal实现共享变量的线程安全
类型为ThreadLoclal的参数n2,存取都通过ThreadLocal,实现线程间的隔离,从而达到线程安全。针对上面2中的线程不安全情况,采用ThreadLocal,可以让共享变量实现线程隔离,从而达到线程安全。单例对象,多个线程操作同一个对象,并且该对象有共享变量,对象中方法会对共享变量做出修改。多线程下,操作同一个MyUtil对象时,变量n1是不安全的。如:MyUtil中增加变量n2。原创 2023-05-07 12:34:41 · 347 阅读 · 0 评论 -
【JUC 四】单例模式 CAS Unsafe ABA 原子引用 公平锁 非公平锁 可重入锁 (递归锁) 自旋锁 死锁...
目录17、单例模式1)饿汉式2)懒汉式3)DCL 懒汉式 (推荐)4)静态内部类 (推荐)5)单例不安全 (反射)1、一个原生,一个反射生成2、两个都反射生成3、防止反射破坏单例模式终极方案:枚举6)枚举最终反编译代码1、枚举类2、反编译查看源码3、最终源代码4、调用有参构造器破解枚举类5、总结18、深入理解CAS1)什么是CAS ?2)Unsafe类3)ABA 问题19、原子引用20、各种锁的...原创 2021-07-27 12:34:00 · 225 阅读 · 0 评论 -
【JUC 三】JDK1.8部分新特性 分支合并ForkJoin 异步调用 JMM Volatile
目录12、JDK1.8 部分新特性一、四大函数式接口(必需掌握)1、常规接口 Function2、断定型接口 Predicate3、供给型接口 Supplier4、消费型接口 Consumer5、区别二、Stream 流式计算13、分支合并 ForkJoin1、什么是ForkJoin?2、ForkJoin特点3、类/接口 关系图4、ForkJoinPool5、ForkJoinTask6、示例14...原创 2021-07-27 12:30:00 · 388 阅读 · 0 评论 -
韩顺平老师坦克大战优化版
目录一、项目介绍1、前言2、涉及知识点3、关键代码4、运行数据二、主要优化方面1、系统常量2、用线程池管理线程3、采用线程安全集合类4、控制坦克发射频率5、敌方自动追击我方6、避免坦克重叠7、生成一组不重复随机整数8、统计数量时采用原子类一、项目介绍1、前言基于韩顺平老师坦克大战的框架和思路,进行了一些优化。编码上尽量按照阿里的代码规约;有非常详尽的注释;引入了线程池,线程安全集合类,原子类...原创 2021-07-17 10:10:00 · 2663 阅读 · 3 评论 -
【多线程基础】线程状态 同步 协作 线程池 Lambda表达式
目录一、基本概念二、线程创建1、继承 Thread 类1.1、实现步骤1.2、start 和 run 方法的区别?1.3、多线程下载图片案例2、实现 Runnable 接口 (推荐)2.1、实现步骤2.2、龟兔赛跑3、实现 Callable 接口 (了解)3.1、步骤3.2、改造多线程下载图片案例三、Lambda表达式 (箭头函数)1、介绍2、函数式接口3、示例3.1、定义接口3.2、传统实现类...原创 2021-07-27 10:37:00 · 261 阅读 · 0 评论 -
【JUC 一】线程 进程 synchronized Lock锁 生产者 消费者 8锁 线程安全集合类...
目录1、什么是JUC?2、线程和进程3、Lock锁(重点)3.1、传统synchronized3.2、Lock 接口3.3、synchronized 和 lock 区别4、生产者和消费者问题4.1、synchronized实现4.2、JUC实现5、8锁现象5.1、2线程 1对象 2方法5.2、2线程 1对象 2方法(1sleep)5.3、3线程 1对象 3方法(1普通)5.4、2线程 2对象 2...原创 2021-07-27 12:17:00 · 252 阅读 · 0 评论 -
【JUC 二】Callable Runnable 同步辅助类 读写锁 阻塞队列 线程池
目录7、Callable()7.1、Callable 与 Runnable7.2、Thread 中使用 Callable8、同步辅助类 (必会)8.1、CountDownLatch8.2、CyclicBarrier8.3、Semaphore9、读写锁9.1、简介9.2、用法9.3、示例10、阻塞队列10.1、简介10.2、队列关系图10.3、使用场景10.4、四组API1、第一组2、第二组3、第...原创 2021-07-27 12:25:00 · 1987 阅读 · 0 评论