JAVA多线程之高级部分

来源:互联网 发布:conoha绑定域名 编辑:程序博客网 时间:2024/06/01 15:12

高级部分

1.Java Memory Model(JMM)

JMM描述了Java线程是如何通过内存交互的,从而了解happens-before原则?为什么需要使用happens-before原则?是如何通过synchronized、volatile&final来实现这一原则?

2.Locks&Condition

java.util.concurrent.locks
为Java5.0之后引入的、对锁机制和等待条件的高级实现,了解通过它如何对程序加锁及同步通讯的实现?

3.线程安全性

了解什么原子性和可见性?如何通过java.util.concurrent.atomic避免原子性编程的问题?当一个原子操作由多个操作语句所构成时,如何通过synchronized方法实现原子性操作?如何通过synchronized&volatile方法实现可见性编程?了解什么是死锁(DeadLocks)?死锁产生的条件?怎样避免死锁?

4.多线程常用交互模型

Product-Consumer生产者消费者模型、Read-Write Model读写锁模型、Feature模型、Worker Thread模型,考虑Java中有哪些类实现了这些设计模型?

5.Java5引入的并发编程工具

java.util.concurrent 引入后大大简化了多线程的编程模型
线程池ExecutorService
Callable&Feature
BlockQueue

6.推荐书籍

Java核心编程、
0 0
原创粉丝点击