01-Java为什么要多线程(线程与进程+Java内存模型JMM)

Java多线程 01-Java为什么要多线程(线程与进程)

  • 一 、为什么要使用多线程?
  • 二、 线程和进程的区别?
  • 1.进程:
  • 2.线程:
  • 3.区别:
  • 三、Java内存模型(JMM)

一 、为什么要使用多线程?

1.单核CPU:提高CPU和IO的利用率
2.多核CPU:提高CPU的利用率
3.互联网:高并发的需求

二、 线程和进程的区别?

1.进程:

进程为程序的一次执行过程,是系统运行程序的基本单位。

2.线程:

线程是进程划分成的更小的运行单位。

3.区别:

Java main方法启动:执行了一个JVM进程,main方法所在的线程为主线程。

* 线程 进程
资源
是否独立 不独立 独立
资源管理 不方便 方便

三、Java内存模型(JMM)

JMM定义程序中各个变量的访问规则,保证多个线程间可以有效地、正确地协同工作。
eg. 共享变量:volatile(使得变量成为共享变量)
非共享变量:不需volatile修饰
多线程三个特性:原子性、可见性和有序性。
01-Java为什么要多线程(线程与进程+Java内存模型JMM)_第1张图片

你可能感兴趣的:(java,开发语言,后端)