目录

这些我们平常用的软件就是程序。
一系列有组织的文件,封装操作系统的各种API,实现不同的效果
程序在系统中的一次执行过程
进程是现代操作系统中资源分配(CPU,内存等关键系统资源)的最小单位
不同进程之间是相互独立的
当我们什么都没做时,qq它还是程序。当我们点击qq这个图标时,qq这个程序就变成了进程。
当我们把qq的界面关闭时,这个进程就结束了。
win下的任务管理器–就能看到进程信息
注释:上面打开的程序就是进程
注释:启动MySQL服务,其实就是启动MySQL的服务端进程~~
注释:不同的端口号对应着不同的进程!
注释:PID就是本次启动进程的编号id

现代OS都是多线程操作系统
线程就是进程中的一个子任务~~
一个线程就是一个 "执行流". 每个线程之间都可以按照顺讯执行自己的代码. 多个线程之间 "同时" 执行 着多份代码.
我们买CPU都会告诉我们是几核心几线程

比如说CPU是 4核8线程
指的是当前电脑的CPU有4个核心(4个独立的芯片),每个核心上能并行处理2个线程
同时能并行执行8个线程~~
举例:
注释:每一个网页都是独立存在切不会互相影响的
同一个进程的所有线程共享进程的资源,线程是操作系统任务执行(系统调度)的基本单位
如果你结束这里面的某个线程,那么那个网页就会直接崩溃

主线程:之前写的main方法就是主线程,java命令 主类名称 启动java进程

如果此时我们再开一个test1进程,那么就会有三个进程了,因为Idea也是用java语言写的,也算一个进程。

注释:JDK提供的线程库实际上就是利用操作系统提供的线程库进行二次封装~