线程需要重点掌握的部分

目录

线程的状态及流转

创建线程的方式

多线程的应用


线程的状态及流转

Java中在Thread类里有一个枚举Enum类明确规定了Java线程的六种状态

  1. 创建线程对象 --> 新建状态 (NEW)
  2. 调用start方法 --> 就绪状态( Runnable 就绪状态 如果CPU 的执行权 则变为运行(但在Java中状态表示依然是就绪状态Runnable)
  3. (从运行中)遇到无法获取锁对象时 --> 阻塞状态(Blocked)
  4. (从运行中)遇到wait方法时 --> 等待状态(Waiting)
  5. (从运行中)遇到sleep方法时 --> 计时等待状态(Timed_Waiting)
  6. 本身的 Run 方法执行完毕后 --> 结束状态( Terminated

创建线程的方式

  • 继承Thread类 /匿名内部类继承Thread

具体创建过程

  • 实现Runnable接口/匿名内部类实现Runable接口

具体创建过程

  • 匿名内部类实现Callable接口/实现Callable接口结合FutureTask,适用于执行有返回值的任务

具体创建过程

  • 通过线程池创建线程

具体创建过程

  • 通过lambda表达式创建线程

具体创建过程

多线程的应用

  • 软件中的耗时操作:
    • 拷贝、迁移大文件
    • 加载大量的资源文件
  • 所有的聊天软件
  • 所有的后台服务器
相关推荐
代码中介商4 天前
Linux多线程编程完全指南(下):线程同步与互斥锁
linux·redis·线程·互斥锁
山顶夕景5 天前
【Agent】Claude code架构和源码粗读分析
大模型·llm·agent·线程·通信协议
Daydream.V8 天前
Python 多线程编程从入门到精通:基础 + 实战 + 避坑全攻略
python·线程·threading·线程教学
不会编程的懒洋洋9 天前
C# Task async/await CancellationToken
笔记·c#·线程·面向对象·task·同步异步
a里啊里啊10 天前
软考-软件评测师:知识点整理(二)——操作系统基础知识
操作系统·线程·进程·软考·pv操作·软件评测师
lee_curry11 天前
线程中断,等待,唤醒与ThreadLocal
java·线程·juc·threadlocal·中断
lee_curry15 天前
Java中关于“锁”的那些事
java·线程·并发·juc
summerkissyou198716 天前
Android-线程安全-volatile
android·线程
庞轩px19 天前
线程本地缓存?CPU缓存!
缓存·线程·cpu·volatile·可见性·本地内存
艾莉丝努力练剑19 天前
【Linux线程】Linux系统多线程(六):<线程同步与互斥>线程同步(上)
java·linux·运维·服务器·c++·学习·线程