JavaSE Day17 多线程
2021-02-14 本文已影响0人
望穿秋水小作坊
1. 讲一下你对进程的理解?
![](https://img.haomeiwen.com/i13946897/6202e0e18fe89688.png)
2. 讲一下你对线程的理解?
![](https://img.haomeiwen.com/i13946897/2f28efbbe4c346a8.png)
3. 多线程原理(分别从单核、多核角度分析)?另外线程越多越好吗?
![](https://img.haomeiwen.com/i13946897/952709fd547af87e.png)
4. 说一下你理解的多线程的优缺点(优缺点各说两个)?
![](https://img.haomeiwen.com/i13946897/924275659dcbe374.png)
5. Java 中开启线程有几种方式?(至少说 2 种)
![](https://img.haomeiwen.com/i13946897/9a7b08210539d115.png)
![](https://img.haomeiwen.com/i13946897/18a417f99e25f08b.png)
6. Java 的 5 大内存区中,如果开启一条 新线程
,哪些内存区是需要独自占用的?哪些内存区是可以共用的?
- 独立开启的:PC 寄存器、Java 虚拟机栈、本地方法栈
- 共享:方法区、堆
![](https://img.haomeiwen.com/i13946897/97db785a52f73f15.png)
- 从上图我们可以更加清楚的知道,开启线程的代价是哪些
7. Java 线程的 join 和 isAlive 方法,分别是什么含义?
![](https://img.haomeiwen.com/i13946897/c78382c085882813.png)
8. 调用线程的 sleep 和 interrupt 方法有什么效果?
![](https://img.haomeiwen.com/i13946897/4b85dbced3814c82.png)
9. 什么情况下会出现线程安全问题(必须同时满足哪两个条件)?
![](https://img.haomeiwen.com/i13946897/d0d03a1cf70c9a92.png)
10. synchronized(obj) 的原理?
![](https://img.haomeiwen.com/i13946897/34128a952189beae.png)
11. 线程同步方法中,什么是同步语句方法?
![](https://img.haomeiwen.com/i13946897/3a10e54097b507ed.png)
12. 动态数组、动态字符串、字典 这三种数组类型,Java 为它们设计了线程安全的类和非线程安全的类,分别是哪些?
![](https://img.haomeiwen.com/i13946897/2946e5d111775e56.png)