1.1、什么是进程
1)什么是进程?
进程:正在进行的程序(大白话)。是系统进行资源分配和调用的独立单位。
每一个进程都有它自己的内存空间和系统资源。
多进程:同时运行多个进程。
2)多进程有和意义?
多进程好处:
1)用户体验比较好。
2)充分利用系统的资源
1.2、什么是线程
1)什么是线程?
程序在执行的时候,可以启动多个任务,每一个任务都是一个线程。
线程:是进程中的单个顺序控制流,是一条执行路径。
一个程序启动,至少要开启一个线程,运行主程序。每开启一个新的任务,就启动一个新的线程。
单线程程序:只有一条执行路径。
多线程程序:有多条执行路径。
2)多线程有何意义?
提高程序的执行效率。
3)线程是不是越多越好呢?
不是。
对于单个CPU而言。同一时刻,只能执行一条线程。为啥我们的程序看起来都是同时运行的呢?
CPU在各个线程之间,非常非常快速的来回切换。快到我们无法察觉,所以我们觉得是同时运行。
CPU在各个线程间切换是随机的,每个线程执行的时间也不一定相同。如果线程数量过多,那么同一时间内,每个线程抢到CPU执行权的时间就短了。
4)JVM运行时,是单线程还是多线程
分析:
至少有一个线程,要去执行我们的main函数,这个线程我们称为主线程!
我们JVM中有一个东西:垃圾回收器,这个东西执行,不在main函数中,因此它有一条单独的线程:垃圾回收线程。
所以:JVM是多线程运行的,至少有2条线程。
多线程的实现方式:
1.1、方式一:继承Thread
1.2、实现Runnable接口