《Java Concurrency in Practice》 学习 第一章
![在这里插入图片描述](https://img-blog.csdnimg.cn/direct/9fdeac8b027848968604610f674ff1d5.png)
介绍
1. 并发简史
背景:
- cpu越来越多,不能让浪费,需要提高资源利用率。
- 对于不同用户,需要对计算机上的资源有平等的使用权,即公平性。
- 有些事情分解起来做,更加简单,这是便利性
2. 优点
3. 风险
安全性问题
常见的一个场景就是多个线程同时更新一个共有变量,可能会造成结果异常。
活跃性问题
安全性的含义是“永远不会发生糟糕的事情”,而活跃性的含义是“某件正确的事情最终会发生”。常见的情况比如死锁、饥饿、活锁等
性能问题
虽说多线程可以提高性能,但是有些情况下多线程的引入,也会造成性能问题。
因为线程的创建与销毁,线程间切换,都是有开销的。