Java----多线程初学习
概念----程序 进程 线程
- 程序:数据和指令的有序集合,静态概念
- 进程:程序的一次独立执行过程,系统资源分配的单位
- 多进程:操作系统能够同时运行多个程序
- 线程:程序内部的一条执行路径,是CPU调度和执行的单位
- 多线程:在同一个应用程序中多条执行路径同时进行
- 线程和进程的区别和联系
每个进程都有独立的代码和数据空间(进程上下文),进程间的切换开销大
同一进程内的多个线程共享相同的代码和数据空间,每个线程有独立的运行栈和程序计数器(PC),线程切换的开销小。一个进程至少包含一个线程。
ps:真正的多线程是指有多个cpu,多核。
而模拟出来的多线程是在一个cpu情况下,快速切换任务进程,造成同时执行的错觉。
例如
QQ.exe运行时可以同时发送图片,下载文件,好友视频等,这即为多线程
而多进程如下