摘要: 线程状态Thread.State 线程状态。线程可以处于下列状态之一: NEW 至今尚未启动的线程处于这种状态。 RUNNABLE 正在 Java 虚拟机中执行的线程处于这种状态。 BLOCKED 受阻塞并等待某个监视器锁的线程处于这种状态。 WAITING 无限期地等待另一个线程来执行某一特定操作 阅读全文
posted @ 2021-07-21 09:26 CH0701 阅读(323) 评论(0) 推荐(0)
摘要: 线程强制执行_join Join合并线程,待此线程执行完成后,再执行其他线程,其他线程阻塞 可以想象为插队 测试案例: package multithreading; // 测试Join方法 // 想象为插队 public class TestJoin implements Runnable { @ 阅读全文
posted @ 2021-07-21 08:13 CH0701 阅读(44) 评论(0) 推荐(0)
摘要: 线程礼让_yield 礼让线程,让当前正在执行的线程暂停,但不阻塞 将线程从运行状态转为就绪状态 让cpu重新调度,礼让不一定成功!看CPU心情 测试案例: package multithreading; // 测试礼让线程 // 礼让不一定成功,看cpu心情 public class TestYi 阅读全文
posted @ 2021-07-21 08:01 CH0701 阅读(34) 评论(0) 推荐(0)
摘要: 线程休眠_sleep sleep(时间)指定当前线程阻塞的毫秒数; sleep存在异常InterruptedException; sleep时间到达后线程进入就绪状态; sleep可以模拟网络延时,倒计时等; 每一个对象都有一个锁,sleep不会释放锁; 模拟网络延时: package multit 阅读全文
posted @ 2021-07-21 07:40 CH0701 阅读(61) 评论(0) 推荐(0)
摘要: 停止线程 不推荐使用JDK提供的stop(),destroy()方法——已废弃 推荐线程自己停下来 建议使用一个标志位进行终止变量,当flag=false,则终止线程 代码实现: package multithreading; // 测试stop // 1.建议线程正常停止——>利用次数,不建议死循 阅读全文
posted @ 2021-07-20 15:54 CH0701 阅读(44) 评论(0) 推荐(0)
摘要: 线程方法 阅读全文
posted @ 2021-07-20 15:29 CH0701 阅读(13) 评论(0) 推荐(0)
摘要: 线程状态 线程五大状态: 阅读全文
posted @ 2021-07-20 15:21 CH0701 阅读(28) 评论(0) 推荐(0)
摘要: 线程底部实现原理:静态代理模式 案例: package multithreading; import com.sun.xml.internal.ws.api.model.wsdl.WSDLOutput; // 静态代理模式总结 // 真实对象和代理对象都要实现同一接口 // 代理对象要代理真实角色 阅读全文
posted @ 2021-07-20 09:46 CH0701 阅读(52) 评论(0) 推荐(0)
摘要: 线程创建 三种创建方式 1. 继承Thread类 自定义线程类继承Thread类 重写run()方法,编写线程执行体 创建线程对象,调用start()方法启动线程 线程不一定执行,CPU按排调度 package multithreading; // 创建线程方式一:继承Thread类,重写run() 阅读全文
posted @ 2021-07-19 22:49 CH0701 阅读(470) 评论(0) 推荐(0)
摘要: 多线程案例:龟兔赛跑-Race 前置条件: 首先来个赛道距离,然后要离终点越来越近 判断比赛是否结束 打印出胜利者 龟兔赛跑开始 故事中是乌龟赢了,兔子需要睡觉,所以我们来模拟兔子睡觉 乌龟赢得比赛 代码: package multithreading; // 模拟龟兔赛跑 public class 阅读全文
posted @ 2021-07-19 18:28 CH0701 阅读(120) 评论(0) 推荐(0)