当前位置 博文首页 > m0_58397045的博客:Java中八种基本数据类型的取值范围

    m0_58397045的博客:Java中八种基本数据类型的取值范围

    作者:[db:作者] 时间:2021-08-01 08:52

    线程

    • 线程的启动
    • 实现Runnab1e接口
    • 继承Thread类
    • 实现Callable接口
    • 线程的状态
    • 线程的方法
    • 线程的优先级
    • 守护线程
    • 未捕获异常处理器

    并发编程的问题

    • 线程引入开销:上下文切换与内存同步
    • 线程安全性(原子性+可见性)
    • 死锁

    线程间通信/线程同步 工具使用

    • synchronized
    • Lock
    • volatile
    • Atomic

    Lock使用 深入

    • 可重入锁 ReentrantLock
    • Condition与wait&notify区别
    • await&signal
    • 公平锁
    • 读写锁 ReentrantReadWriteLock
    • LockSupport(锁住的是线程,synchronized锁住的是对象)
    • synchronized与Lock的区别
    • 原子操作类使用

    Java内存模型 线程同步工具原理

    • JMM抽象结构
    • 指令重排序
    • 内存屏障
    • happens-before(抽象概念,基于内存屏障)
    • 顺序一致性
    • volatile原理
    • synchronized原理
    • 原子操作原理
    • 锁的比较
    • 锁的优化
    • 锁的分类
    • 偏向锁(只有一个线程进入临界区)
    • 轻量级锁(多个线程交替进入临界区)
    • 重量级锁(多个线程同时进入临界区)
    • CPU如何实现原子操作
    • Java如何实现原子操作
    • CAS在OpenJDK中的实现

    同步容器

    • ConcurrentHashMap
    • CopyOnWriteArrayList
    • BlockingQueue
    • ThreadLocal

    同步工具使用

    • Semaphore (信号量)
    • Cycli eBarrier (可循环使用的屏障/栅栏)
    • Exchanger (两个线程交换数据)
    • CountDownLatch (闭锁)
    • FutureTask (Future实现类)
    • 将批量同步操作转为异步操作(并行流/CompletableFuture)
    • 多个异步任务合并
    • API

    线程池使用

    • 引入原因
    • 继承体系
    • ExecutorService
    • ScheduledExecutorService
    • ThreadPoolExecutor
    • 创建线程池
    • 线程动态变化
    • 扩展ThreadPoolExecutor
    • ScheduledThreadPoolExecutor
    • Executors
    • CompletionService

    J.U.C 源码解析

    • AQS的接口
    • AQS使用实例(互斥锁,tryAcquire只需一次CAS)
    • AQS实现
    • 同步队列
    • 独占式同步状态
    • 共享式同步状态
    • 独占式超时获取同步状态
    • ReentrantLock公平锁
    • ReentrantReadWriteLock
    • 读写状态的设计
    • 写锁的获取与释放
    • 读锁的获取与释放(放弃)
    • 锁降级
    • LockSupport
    • Condition
    • 等待队列
    • AtomicInteger
    • ThreadPoolExeuctor
    • 状态转换
    • 成员变量
    • 构造方法
    • 执行任务

    并发体系思维导图

    Java内存模型(JMM)

    • 线程通信机制
    • 内存模型
    • synchronized
    • volatile
    • DCL

    并发基础

    • AQS
    • CAS

    • ReentrantLock
    • ReentrantReadWriteLock
    • Condition

    并发工具类

    • CyclicBarrier
    • CountDownLatch
    • Semaphore
    • Exchanger

    其他

    • ThreadLocal
    • Fork/Join

    Java并发集合

    • ConcurrentHashMap
    • ConcurrentLinkedQueue
    • Concurr entSkipListMap
    • ConcurrentSkipListSet

    atomic

    • 基本类型类
    • 数组
    • 引用类型
    • 字段类

    阻塞队列

    • ArrayBlockingQueue
    • LinkedBlockingQueue
    • PriorityBlockingQueue
    • DelayQueue
    • SynchronousQueue
    • LinkedTransferQueue
    • LinkedBlockingDeque

    线程池

    • Executor
    • Future

    很多程序员,整天沉浸在业务代码的 CRUD 中,业务中没有大量数据做并发,缺少实战经验,对并发仅仅停留在了解,做不到精通,所以总是与大厂擦肩而过。

    我把私藏的这套并发体系的笔记和思维脑图分享出来,理论知识与项目实战的结合,我觉得只要你肯花时间用心学完这些,一定可以快速掌握并发编程。

    不管是查缺补漏还是深度学习都能有非常不错的成效,需要的话记得帮忙点个赞支持一下

    更多:Java进阶核心知识集

    包含:JVM,JAVA集合,网络,JAVA多线程并发,JAVA基础,Spring原理,微服务,Zookeeper,Kafka,RabbitMQ,Hbase,MongoDB,Cassandra,设计模式,负载均衡,数据库,一致性哈希,JAVA算法,数据结构,加密算法,分布式缓存等等

    image

    点击免费领取我的学习笔记:学习视频+大厂面试真题+微服务+MySQL+Java+Redis+算法+网络+Linux+Spring全家桶+JVM+学习笔记图

    高效学习视频

    模式,负载均衡,数据库,一致性哈希,JAVA算法,数据结构,加密算法,分布式缓存等等

    [外链图片转存中…(img-jpuhZ2UP-1627461967817)]

    点击免费领取我的学习笔记:学习视频+大厂面试真题+微服务+MySQL+Java+Redis+算法+网络+Linux+Spring全家桶+JVM+学习笔记图

    高效学习视频

    image

    cs
    下一篇:没有了