1. 什么是进程
进程:当我们只要启动一个应用程序的时候,就会开启一个进程。
win: 查看任务管理器
Linux: ps -ef | grep xxx
macos: ps -ef | grep xxx
在进程至少有一条线程,该线程就是为主线程
进程就是我们所有线程的集合
2. 什么是线程
线程就是一条执行程序
在进程中开启一条线程执行我们的程序代码,程序执行的顺序必须遵循从上往下的顺序。
注意: 如果是多线程的情况下,代码的执行顺序就是从上往下执行
3. 什么是多线程?
也就是在同一个进程中,开启了多条不同的执行路径。每条执行路径相互不影响。同时执行
4. 为什么需要用到多线程
因为我们http协议默认的情况采用同步的形式
整个过程都是基于请求与响应过程,如果服务器端没有及时响应给客户端的情况下,就会造成我们浏览器或者是客户端一直等待,这样对我们的用户体验是非常不友好的。
5. 用户线程与守护线程的转换:
thread.setDaemon(false); 用户线程
thread.setDaemon(true); 守护线程