一、摩尔定律的失效和多线程的发展
摩尔定律的思想是,预计18个月会将芯片的性能提高一倍。但是在2004年,Intel CEO宣布Intel彻底取消4G Hz计划,至此摩尔定律在芯片上的发展已经失效了。如果计算机没有办法继续提高单个CPU的性能,那么就在一个CPU里面塞很多的核进去,因此多核CPU兴起。
在单核时代,多线程就有很广泛的应用,这时候多线程大多用于降低阻塞。多线程的作用不只是用作并行计算,还可以提高CPU的利用率。
二、线程的介绍
线程是进程里面更细微的执行单元,而多线程是为了使得多个线程并行的工作以完成多项任务,以提高系统的效率,线程是在同一时间需要完成多项任务的时候被实现。
线程的基本操作:
- 线程刚刚新建出来,那它的状态就是new的状态,new状态的线程其实并没有开始工作,它只是一个静态的实体
- 当调用实例的start方法之后,线程才真正的被启动。线程被启动之后状态变成RUNNABLE状态,表示线程可以执行了,一切准备就绪(但RUNNABLE状态并不一定表示这个线程一定在CPU上执行,有没有真正在执行,取决于物理CPU的调度)
- 如果一个线程它的所有工作都做完了,那么自然它就会被终结掉,状态就处于TERMINATED状态,表示线程任务执行结束
- 有些时候线程在执行过程中不可避免要去申请某些锁,比如要求申请某些对象的一个定时器,比如调用了synchronized方法,这个时候线程可能会被阻塞住
- 如果一个线程在执行过程中调用了wait,那么这个进程就会变成等待状态WAITING,进入等待状态的线程