线程是Java平台的基石。随着多核处理器成为标准,欲构建高性能的应用程序,有效地利用并发将成为关键的步骤。Java SE 5和6是迈向并发应用开发的巨大进步,其中包括对Java虚拟机的改良,从而支持高性能、高可伸缩性的类和丰富的、崭新的并发构建块。在《JAVA并发编程合集》中,这些新特性的创造者们不仅解释了其工作原理和使用方式,同时还揭示其背后的动机和设计模式。

并发编程

1.概览

2.进程与线程

3. Jav a线程

4.共享模型之管程

5.共享模型之内存

6.共享模型之无锁

7.共享模型之不可变

8.共享模型之工具

模式篇

  • 同步模式之保护性暂停
  • 同步模式之Balking
  • 同步模式之顺序控制
  • 异步模式之生产者/消费者
  • 异步模式之工作线程
  • 终止模式之两阶段终止模式
  • 线程安全单例
  • 享元模式

Java内存模型

原理篇

  • 指令级并行原理
  • cpu缓存结构原理
  • volatile原理
  • final原理
  • Monitor原理
  • syncronized原理
  • synchronized原理进阶
  • wait notify原理
  • join原理
  • park unpark原理
  • AQS原理
  • ReentrantLock原理
  • 读写锁原理
  • Semaphore原理
  • ConcurrentHashMap原理
  • LinkedBlockingQueue原理
  • ConcurrentLinkedQueue原理

应用篇

  1. 效率
  2. 限制
  3. 互斥
  4. 同步和异步
  5. 缓存
  6. 分治
  7. 统筹
  8. 定时

并发基础

线程池

组赛队列

20个高并发编程必备知识点

借用Java并发编程实践中的话"编写正确的程序并不容易,而编写正常的并发程序就更难了",相比于顺序执行的情况,多线程的线程安全问题是微妙而且出乎意料的,因为在没有进行适当同步的情况下多线程中各个操作的顺序是不可预期的,下面算是对多线程情况下同步策略的一个简单介绍。

  • 问题—:什么是线程安全问题?
  • 问题二:什么是共享变里可见性问题?
  • 问题三:原子性?
  • i问题四:CAS介绍?
  • 问题五:什么是可重入锁?
  • 问题六:Synchr onized关键字?
  • 问题七:ReentrantReadWriteLock介绍?
  • 问题八:Volatile变里?
  • 问题九:乐观锁与悲观锁?
  • 问题十:独占锁与共享锁?
  • 问题十—:公平锁与非公平锁?
  • 问题十二:AbstractQueuedSynchronizer介绍?
  • 问题十三:CountDownLatch原理?
  • i问题十四:EeertrantLock独占锁原理?
  • i问题十五:ReentrantReadWriteLock原理?
  • 问题十六:什么是重排序问题?
  • 问题十七:什么是中断?
  • 问题十八:FutureTazk原理?
  • 问题十九:ConcurrentHashMap原理简述?

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐