【并发】深入理解Java线程的底层原理

【并发】深入理解Java线程的底层原理

线程基础知识

一、线程与进程

进程

线程

【面试题】进程与线程的区别

进程间通信的方式

二、线程的同步互斥

线程同步

线程互斥

上下文切换

【面试题】什么情况下会发生上下文切换? 

三、操作系统层面线程生命周期

Java中的状态模型

Java线程详解

一、Java线程的实现方式

方式1:使用 Thread类或继承Thread类

方式2:实现 Runnable 接口配合Thread

方式3:使用有返回值的 Callable

方式4:使用 lambda

方式5:线程池 

本质上Java中实现线程只有一种方式

二、Java线程实现原理(start与run)

JVM中线程执行流程

Java线程属于内核级线程!!!

协程

三、Java线程的调度机制

协同式线程调度

抢占式线程调度

Java线程调度就是抢占式调度

四、Java线程的生命周期(了解即可)

五、Thread常用方法

sleep方法

yield方法

join方法

stop方法

六、Java线程的中断机制(优雅的停止线程)

API的使用

利用中断机制优雅的停止线程 

sleep 期间能否感受到中断


【并发】深入理解Java线程的底层原理

线程基础知识

一、线程与进程

进程

操作系统会以进程为单位分配系统资源(CPU时间片、内存等资源),进程是资源分配的最小单位

当一个程序被运行,从磁盘加载这个程序的代码至内存,这时就开启了一个进程

线程

线程,有时被称为轻量级进程,是操作系统调度࿰

你可能感兴趣的:(图灵课堂学习笔记,Java并发问题,线程,进程,Thread,线程通信,线程调度)