
多线程
咪蒙不秃头
小白做笔记
展开
-
多线程核心知识总结(六)——一网打尽线程属性
线程的各个属性 线程Id /** * 描述: ID从1开始,JVM运行起来后,我们自己创建的线程的ID早已不是2. */ public class Id { public static void main(String[] args) { Thread thread = new Thread(); System.out.println("主线程的ID"+Thread.currentThread().getId()); System.ou原创 2020-10-20 11:40:12 · 238 阅读 · 0 评论 -
多线程核心知识总结(五)——趣解Thread和Object类中的线程相关方法
多线程核心知识总结 趣解Thread和Object类中的线程相关方法 方法概览wait,notify,notifyAll方法详解 作用,用法:阻塞阶段,唤醒阶段,遇到中断原创 2020-10-17 13:42:33 · 2331 阅读 · 9 评论 -
多线程核心知识总结(四)——图解线程生命周期
多线程核心知识总结 四.线程生命周期 线程的六种状态 - New 已创建但还未启动的新线程 - Runnable 可运行的,调用start方法之后就会变成Runnable状态,无论是否运行,对应操作系统中的ready和running - Blocked 当一个线程进入被sychornized修饰的代码块的时候,并且该锁已经被其他线程拿走了,这个时候的状态为Blocked - Waiting 没有设置time参数的Object.wait()等方法执行后,(具体看图)。 - Timed Waiting Thre原创 2020-10-04 00:28:02 · 377 阅读 · 3 评论 -
多线程核心知识总结(三)——线程停止,中断总结
多线程核心知识总结 三.线程停止,中断 1.讲解原理 原理介绍:使用interrupt了来通知,而不是强制 使用一个线程来通知另一个线程该停止的机制,只是一种通知,如果该线程本身不决定停止,则其不会停止,被停止线程的本身,更熟悉停止自己需要做那些处理和清理工作,所以正确停止线程,是如何使用interrupt合理通知该线程并让该线程配合停止。 2.最佳实践 通常线程会在什么情况下停止 run方法的所有代码都运行完毕了 有异常出现,并且方法中没有捕获 正确停止方法:interrupt 通常情况下线程会在什原创 2020-10-01 07:09:08 · 836 阅读 · 3 评论 -
多线程核心知识总结(二)——开启多线程启动世界
多线程核心知识总结 二.开启多线程启动世界 1.启动线程的正确和错误方式 start()和run()比较: start()方法原理解读: start方法含义: 1.启动新线程:线程对象初始化之后,调用了start方法,当前线程通常是主线程,主线程会告诉虚拟机,如果有空闲的话,启动新线程。(是否能启动,什么时候启动,是线程调度器决定) 2.准备工作:让自己处于就绪状态,就绪状态指的是,已经获取除了CPU以外的其他资源,比如说,已经设置了上下文,栈,线程状态,PC(寄存器),在准备工作完成后,线程才会进一步原创 2020-09-29 17:39:01 · 157 阅读 · 0 评论 -
多线程核心知识总结(一)——实现多线程的正确姿势
多线程核心知识总结 一.实现多线程的正确姿势 1.实现多线程的方法到底有几种? 官方文档中,只有两种。 声明一个Thread的子类 public class ThreadStyle extends Thread{ @Override public void run() { System.out.println("用Thread类实现线程"); } public static void main(String[] args) { new原创 2020-09-28 16:27:05 · 284 阅读 · 0 评论