🌈hello,你好鸭,我是Ethan,西安电子科技大学大三在读,很高兴你能来阅读。
✔️目前博客主要更新Java系列、项目案例、计算机必学四件套等。
🏃人生之义,在于追求,不在成败,勤通大道。加油呀!
🔥个人主页:Ethan Yankang
🔥推荐:史上最强八股文||一分钟看完我的几百篇博客
🔥温馨提示:划到文末发现专栏彩蛋 点击这里直接传送
🔥本篇概览:详细讲解了java中的线程。🌈⭕🔥
【计算机领域一切迷惑的源头都是基本概念的模糊,算法除外】
🌈引出:
前一篇章:《剑指JVM》——第2章 运行时数据区概述及布局介绍—运行时数据区篇1-CSDN博客
线程
线程是一个程序里的运行单元。JVM 允许一个应用有多个线程并行执行。在HotSpot虚拟机中,每个线程都与操作系统的本地线程直接映射。当一个Java线程准备好执行以后,此时这个操作系统的本地线程也会同时创建。Java线程执行终止后,本地线程也会回收。操作系统负责将线程调度到任何一个可用的中央处理器(Central Processing Unit,CPU)上。一旦本地线程初始化成功,它就会调用Java线程中的run()方法。run()方法正常执行完成包含两种情况。
一种是执行过程中未出现异常,方法正常执行结束。
一种是执行过程中出现了异常但是触发了相应的异常处理机制。方法正常执行完成之后,Java线程和本地线程都会被回收,并释放相应的资源。
需要强调的一点,如果执行run()方法的过程中出现了一些未捕获的异常或者有些异常没有及时处理,这时就会导致Java线程终止,本地线程再决定JVM 是否要终止。JVM是否要终止取决于当前线程是不是最后一个非守护线程,非守护线程也称为用户线程,用户线程可以认为是系统的工作线程,它会完成这个程序要完成的业务操作,当一个Java应用内只有守护线程时,JVM 自动退出。
守护线程:
守护线程是一种特殊的线程,就和它的名字一样,它是系统的守护者,在后台默默完成些系统性的服务。在 HotSpot虚拟机中,常见的守护线程主要包括以下3种。
(1)垃圾回收线程:这种线程对在 JVM 里不同种类的垃圾收集行为提供了支持。
(2)编译线程:这种线程在运行时会将字节码编译成本地代码。
(3)手动创建守护线程:在调用 start()方法前调用setDaemon(true)可以将线程标记为守护线程。
更多java线程的知识,请点击这里:
💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖💖
热门专栏推荐
🌈🌈计算机科学入门系列 关注走一波💕💕
🌈🌈CSAPP深入理解计算机原理 关注走一波💕💕
🌈🌈微服务项目之黑马头条 关注走一波💕💕
🌈🌈redis深度项目之黑马点评 关注走一波💕💕
🌈🌈JAVA面试八股文系列专栏 关注走一波💕💕
🌈🌈JAVA基础试题集精讲 关注走一波💕💕
🌈🌈代码随想录精讲200题 关注走一波💕💕
总栏
🌈🌈JAVA基础要夯牢 关注走一波💕💕
🌈🌈JAVA后端技术栈 关注走一波💕💕
🌈🌈JAVA面试八股文 关注走一波💕💕
🌈🌈JAVA项目(含源码深度剖析) 关注走一波💕💕
🌈🌈计算机四件套 关注走一波💕💕
🌈🌈数据结构与算法 关注走一波💕💕
🌈🌈必知必会工具集 关注走一波💕💕
🌈🌈书籍网课笔记汇总 关注走一波💕💕
📣非常感谢你阅读到这里,如果这篇文章对你有帮助,希望能留下你的点赞👍 关注❤收藏✅ 评论💬,大佬三连必回哦!thanks!!!
📚愿大家都能学有所得,功不唐捐!