并发编程

白天 夜间 首页 下载 阅读记录
  我的书签   添加书签   移除书签

JDK8

浏览 93 扫码 分享 2022-07-24 23:02:24
  • 构造器
  • get流程
  • put流程
  • size计算流程
  • 扩容

若有收获,就点个赞吧

0 人点赞

上一篇:
下一篇:
  • 书签
  • 添加书签 移除书签
  • 一、Java线程
    • 1. 操作系统前置知识
      • 1. 进程与线程
      • 2. 虚拟地址映射
      • 3. 用户态与内核态
      • 4. CPU上下文
    • 2. java线程的本质
      • 1. Thread与Runnable
      • 2. 线程等待与唤醒
      • 3. 线程中断
      • 4. park和unpark
      • 4. java线程模型
      • 5. 模拟创建线程
      • 6.线程的状态
    • 3. 操作系统同步原语
      • 1. pthread_mutex_t 互斥量
        • 互斥锁
      • 2. pthread_spinlock_t 自旋锁
        • Java实现CAS锁
      • 3. sem_t 信号量
  • 二、Synchornized
    • 1.Synchornized锁升级
      • 1. Monitor管程
      • 2. Lock Record 锁记录
      • 3. 锁升级流程
        • 1. 偏向锁
          • 偏向锁源码
            • 偏向撤销
            • 批量重偏向
            • 批量撤销
            • 偏向过期
        • 2. 轻量级锁
          • 轻量级锁源码
        • 3. 重量级锁
          • 重量级锁源码
    • 2. 锁粗化与锁消除
    • 3. 相关问题
  • 三、ReentrantLock
    • 1. Lock接口
      • Condition接口
      • 死锁 活锁 饿死
    • 2. ReentrantLock 可重入锁
      • 公平锁与非公平锁
    • 3. AQS
      • 1. AQS源码
        • 1、加锁流程
          • 加锁流程源码
        • 2、解锁流程
          • 解锁流程源码
        • 3、锁的可重入
        • 4、锁的可中断
        • 5、AQS与synchronized关键字之间的关系
        • 6、自定义实现AQS
      • 2. Condition条件队列
        • await()流程
          • await()源码
        • signal()流程
          • signal()源码
      • 3. 读写锁ReentrantReadWriteLock
        • 1.读写锁的使用
        • 2.读读并发的问题
        • 3. 读写锁流程
          • 源码
            • 3.1 写锁的上锁
            • 3.2 写锁的释放
            • 3.3 读锁的上锁
            • 3.4 读锁的释放
        • 4.读写锁实现缓存
      • 4. 高性能读写锁StampedLock
  • 四、JUC工具类
    • 1.Samephore
      • 流程
        • 源码
    • 2.CountDownLatch
    • 3.CyclicBarrier
      • CountDownLatch和CyclicBarrier辨析
    • 4.Exchanger
  • 五、线程池
    • Future模式 FutureTask
      • FutureTask源码
      • CompletableFuture
    • Executor 执行器
      • 线程池参数
      • ExecutorService 与AbstractExecutorService
        • ThreadPoolExecutor 线程池执行器
          • Worker
          • addWorker()
        • ForkJoinPool
          • ForkJoinTask
      • 核心线程数为0的情况
      • 合理配置线程池
      • 线程池的关闭
      • 处理异常
    • Executors 线程池工厂
      • DefaultThreadFactory 线程工厂
    • CompletionService 按任务执行结果的顺序封装
    • 手写线程池
    • Tomcat线程池
  • 六、JMM
    • 缓存一致性问题 MESI
      • 有了MSEI为什么还有可见性问题?
    • JAVA内存模型
      • 并发安全三大问题
        • 1.CPU缓存-可见性
          • 一个关于可见性的问题
        • 2.指令重排-有序性
          • 重排序
            • 临界区
          • 双重锁的问题
        • 3.线程切换-原子性
    • Happens-before原则
    • volatile关键字
      • volatile与锁的比较
      • volatile的内存屏障与源码
    • 内存屏障
      • synchronized的内存屏障
    • CAS
      • CAS的三大问题
    • 原子操作类Atomic
      • 原子引用
        • AtomicReference
        • AtomicStampedReference
        • AtomicMarkableReference
      • 原子数组
      • 字段更新器
      • 原子累加器
        • LongAdder
          • 缓存行伪共享
          • LongAdder流程
    • Unsafe
      • 自定义实现AtomicInteger
    • final关键字
  • 七、并发容器
    • LongAdder
    • ConcurrentHashMap
      • JDK 7 HashMap 并发死链
      • ConcurrentHashMap源码
        • ConcurrentHashMap源码流程图
        • JDK8
          • 构造器
          • get流程
          • put流程
          • size计算流程
          • 扩容
        • JDK7
          • 构造器
          • put
            • rehash
          • get
          • size计算流程
    • ConcurrentSkipList
    • CopyOnWrite容器
    • BlockingQueue 阻塞队列
      • 阻塞队列实现类
  • 八、并发模型
    • Fork-Join
    • ThreadLocal
      • JAVA的四种引用
      • ThreadLocal 内存泄漏分析
  • 九、多线程设计模式
    • 同步模式
      • 保护性暂停模式
        • 线程join原理
        • 添加超时处理
        • 保护性暂停模式的多任务扩展
      • Balking模式
      • 顺序控制
        • 固定顺序运行
        • 线程交替输出
    • 异步模式
      • 生产者消费者模式
      • Worker Thread模式
    • 终止模式
      • 两阶段终止模式
    • 线程安全的单例
    • Immutability模式
    • Copy-on-Write模式
    • 线程本地存储模式
    • Thread-Per-Message模式
暂无相关搜索结果!

    让时间为你证明

    展开/收起文章目录

    分享,让知识传承更久远

    文章二维码

    手机扫一扫,轻松掌上读

    文档下载

    请下载您需要的格式的文档,随时随地,享受汲取知识的乐趣!
    PDF文档 EPUB文档 MOBI文档

    书签列表

      阅读记录

      阅读进度: 0.00% ( 0/0 ) 重置阅读进度

        思维导图备注