一、学习导图

多线程专题_职场

 

二、分享资料

Ø    华晨明:多线程学习笔记

Ø    徐珏如:多线程学习之biznews中利用多线程抓取任务

 

三、学习资料

Ø    Java 多线程与并发编程专题

Ø    Java 理论与实践: 流行的原子

Ø    关于 java.util.concurrent 您不知道的 5 件事,第 2 部分

Ø    JDK 7 中的 Fork/Join 模式

Ø    Java 理论与实践: 修复 Java 内存模型,第 1 部分

Ø    Java 理论与实践: JDK 5.0 中更灵活、更具可伸缩性的锁定机制

Ø    适用于 Java 程序员的 CSP,第 1 部分

 

四、专题测试

Ø  基础知识

1进程和线程的区别?

2Thread和Runnable有什么区别?

3线程有哪四种状态?

4sleep/join/wait的作用?sleep和wait有何异同?

5怎样会进入阻塞状态?

6o.notify()和o.notifyAll()有何区别?

7interrupt有何作用?

8可以synchronized为null的对象吗,为什么?

Ø  多线程读写安全

9synchronized和volatile关键字有何不同?

10ThreadLocal是什么,有什么作用?

Ø  concurrent

11Lock和Condition类分别有什么特色,可以取代谁?

12如何使用读写锁?

13列举常见的并发容器有哪些,适用于怎样的场景?

14为什么要使用线程池?

15Executor的设计思想是什么?常用的ThreadPoolExecutor有什么特点,可以取代谁?

16简述FutureTask的用途

17简述什么是CAS算法,与原子变量有何关系?

18简述常见的同步工具类

19简述fork-join模式,其试图发挥什么作用?Barrier类在其中扮演什么角色?

Ø  JAVA内存模型

20什么是内存模型,什么是可见性?

21happens-before原则试图解决什么问题?

Ø  死锁

22如何确认死锁的发生?

23简述多线程编程的常见缺陷及其产生的原因。

24平时的开发中如何避免死锁?

 

测试地址:https://spreadsheets.google.com/spreadsheet/viewform?formkey=dGY3Zm9uOWw0TUpPekdBWGRjLTJSdGc6MQ

 

更多精彩详见:http://10.20.131.9:20500/mediawiki/index.php/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B

http://macrochen.iteye.com/blog/385608