文章目录
目录
前言
主要介绍了Java并发编程中的进程与线程。
一、进程与线程
- 进程
- 程序的运行实体,资源分配的基本单位
- 线程
- 进程中的指令流,调度的基本单位
二、并行与并发
- 并行
- 同一时刻共同完成多个任务
- 并发
- 同一时间段内共同完成多个任务(微观实际串行,宏观粗略并行)
三、多线程应用
- 多线程异步调用
- 同步
- 调用方法需要等待被调用方法的结果返回,才能继续执行
- 异步
- 调用方法无需等待被调用方法的结果返回,就能继续执行
- 多线程运行时,将主线程中运行时间较长的指令交给用户线程去执行,可以实现多线程异步调用,减少主线程被阻塞的时间
- 同步
- 多核多线程性能提高
- 多核
- 多核环境下,实现多线程可以提高并发度,提高运行效率
- 单核
- 单核环境下,多线程切换的线程上下文切换会占用很多时间,降低运行效率
- 多核