1.过程和线程
过程:正在运行的程序
线程;过程中的单个顺序控制流,
电脑CPU的核数:代表同一个刹时工夫解决工作数。
主频:切换解决工作的频率
例子:一台电脑 10核CPU,主频100MHz和一台电脑 1核CPU,主频3GHz,选哪个;
选第二个,切换得快更不容易卡顿。
过程相当于一条河,线程就相当于河流的分支
2.继承Thread类实现多线程
- 继承Thread类 重写run()
- 创立子类对象,调用start(),就开启多线程 run() 和主程序各自执行各的
- 后果就是 两边同时执行,输入互相交叉,称为异步
- 创立两个子类对象,都调用start(),那么执行的时候就开了两个干流,并且主程序还在运行。
3.实现Runnable接口实现
Thread构造方法有
Thread()Thread(Runnable target)Thread(Runnable target, String name) 这里的name,是线程的名字
- 能够创立一个实现类来实现Runnable接口
- 或者间接在构造方法里重写Runnable接口的run办法
- Thread(Runnable target, String name)
这里的name,是线程的名字
能够通过Thread.currentThread.getname()获取
加上线程名能够更好辨别