第一节 线程和多线程
一、线程的概念
进程:它是程序的一次动态执行,对应了从代码加载、执行至执行完毕的一个完整过程。
线程:线程是进程执行过程中产生的多条执行线索,是比进程单位更小的执行单位。
相同点:都是用一个按序执行的语句序列来完成特定的功能
不同点:线程没有入口、出口,因此其自身不能自动运行,而必须栖身于某一个进程之中,由进程触发执行。
二、线程的结构
线程由以下 3 部分组成
- 虚拟cpu,封装在 java.lang.Thread 类中,它控制这整个线程的运行。
- 执行的代码,传递给 Thread 类,由 Thread 类控制按序执行。
- 处理的数据,传递给 Thread 类,是在代码执行过程中所要处理的数据。
当一个线程被构造时,它由构造方法参数、执行代码、操作数据来初始化。
三、线程的状态
当生成一个 Tread 类的对象后就产生了一个线程。通过该对象实例,可以启动线程、终止线程,或者暂时挂起线程等。
- 新建
- 可运行状态
- 死亡
- 阻塞
- 中断线程