Thread.interrupted()
线程中断
1.线程有自己决定是否中断。其他的线程只能给当前线程设置中断标志位。然后当前线程去检测是否中断。然后自行决定是否中断。
2.Thread.interrupted()
该方法用于检测线程是否中断,以及清除中断标志位。当第二次调用这个方法的时候就会返回false。
3.如果线程被中断,当我们执行Thread.sleep()的时候会抛出中断异常。
Thread thread = new Thread(() -> {while (!Thread.interrupted()) {System.out.println(1);}for (int i = 0; i < 100; i++) {System.out.println(i);}
// try {
// Thread.sleep(4000);
// } catch (InterruptedException e) {
// e.printStackTrace();
// }//});thread.start();// 一段时间以后Thread.sleep(1000);thread.interrupt();
Thread.interrupted()相关推荐
- Java并发编程的基础-Thread.interrupted
通过interrupt,设置了一个标识告诉线程可以终止了,线程中还提供了静态方法Thread.interrupted()对设置中断标识的线程复位.比如在上面的案例中,外面的线程调用thread.int ...
- Thread.interrupted()与Thread.currentThread().isInterrupted()区别
背景 今天在研究ThreadPoolExecutor源码时,在runWorker(Worker w)的方法中有一个判断条件分别用到了Thread.interrupted()和Thread.curren ...
- Thread.interrupted()与Thread.isInterrupted()的区别
调用Thread.interrupt()方法并不能真正停止线程,只是在当前线程做了一个中断的状态标志. public class MyThread extends Thread{@Overridepu ...
- Thread.currentThread().interrupt()和Thread.interrupted()和Thread.currentThread().isInterrupted()
Thread.interrupted() 可以返回当前标志位并使标志位为false Thread.currentThread().interrupt() 可以使标志位置为true Thread.cur ...
- 【并发编程】 --- Reentrantlock源码解析5:再探不可中断性 + 线程unpark后诡异的Thread.interrupted()判断
文章目录 1 想要读懂这篇文章必须要拥有的前置知识 2 想写这篇文章的原因 3 困扰我很久的Reentrantlock源代码1 --- 貌似无用的变量failed 4 困扰我很久的Reentrantl ...
- Java Thread类的静态布尔型interrupted()方法(带示例)
线程类静态布尔型interrupted() (Thread Class static boolean interrupted()) This method is available in packag ...
- 简述Thread的interrupt()、interrupted()及isInterrupted()的区别
前言 在java Thread类中,我们会看到interrupt().interrupted()及isInterrupted(),在大多数情况下,我们都不会使用到它们,但是有一个Interrupted ...
- Thread类中interrupt()、interrupted()和isInterrupted()方法详解
首先看看官方说明: interrupt()方法 其作用是中断此线程(此线程不一定是当前线程,而是指调用该方法的Thread实例所代表的线程),但实际上只是给线程设置一个中断标志,线程仍会继续运行. i ...
- Java多线程3:Thread中的静态方法
Thread类中的静态方法 Thread类中的静态方法表示操作的线程是"正在执行静态方法所在的代码块的线程".为什么Thread类中要有静态方法,这样就能对CPU当前正在运行的线程 ...
最新文章
- 代码和普通的java_Java中普通代码块,构造代码块,静态代码块区别及代码示例...
- oracle更改编码
- python为什么用class_python为什么会有@classmethod?
- System.Data.Entity.Core.MetadataException:“Unable to load the specified metadata resource.”
- 三种水平居中布局~详细
- linux 取出本机IP
- 【渝粤教育】广东开放大学 java程序设计基础 形成性考核 (39)
- 软件工程毕业答辩常问的问题
- r语言平均值显著性检验_R语言标记显著性标记
- 微信朋友圈python广告评论_利用Python让你的微信朋友圈与众不同,更加高大上
- 想成为魅力十足的人的十大习惯
- JavaWeb web.xml配置详解
- latex参考文献太长,换行处理
- [特别篇] 评中国药学家距诺贝尔奖一步之遥
- [算法设计题] 双栈结构
- uniapp 流文件pdf_uniapp写入字节流文件bytes
- PowerPoint2007界面元素推荐
- C++ 使用new申请内存
- 信息安全从业人员证书——CISP(附培训课件资料)
- 输入一个字母,输出后五个字母