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()获取
加上线程名可以更好区分
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。