线程中断 interrupt 和 LockSupport
短信预约 -IT技能 免费直播动态提醒
本文章将要介绍的内容有以下几点,读者朋友也可先自行思考一下相关问题:
- 线程中断 interrupt 方法怎么理解,意思就是线程中断了吗?那当前线程还能继续执行吗?
- 判断线程是否中断的方法有几个,它们之间有什么区别?
- LockSupport的 park/unpark 和 wait/notify 有什么区别?
- sleep 方法是怎么响应中断的?
- park 方法又是怎么响应中断的?
线程中断相关方法
线程中和中断相关的方法有三个,分别介绍如下:
1) interrupt
我们一般都说这个方法是用来中断线程的,那么这个中断应该怎么理解呢? 就是说把当前正在执行的线程中断掉,不让它继续往下执行吗?
其实,不然。 此处,说的中断仅仅是给线程设置一个中断的标识(设置为true),线程还是会继续往下执行的。而线程怎么停止,则需要由我们自己去处理。 一会儿会用代码来说明这个。
2) isInterrupted
判断当前线程的中断状态,即判断线程的中断标识是true还是false。 注意,这个方法不会对线程原本的中断状态产生任何影响。
3) interrupted
也是判断线程的中断状态的。但是,需要注意的是,这个方法和 isInterrupted 有很大的不同。我们看下它们的源码:
public boolean isInterrupted() { return isInterrupted(false); }public static boolean interrupted() { return currentThread().isInterrupted(true); }//调用同一个方法,只是传参不同private native boolean isInterrupted(boolean ClearInterrupted);
首先 isInterrupted 方法是线程对象的方法,而 interrupted 是Thread类的静态方法。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
线程中断 interrupt 和 LockSupport
下载Word文档到电脑,方便收藏和打印~
下载Word文档
猜你喜欢
线程中断 interrupt 和 LockSupport
本文章将要介绍的内容有以下几点,读者朋友也可先自行思考一下相关问题:线程中断 interrupt 方法怎么理解,意思就是线程中断了吗?那当前线程还能继续执行吗?判断线程是否中断的方法有几个,它们之间有什么区别?LockSupport的 pa
2023-06-02
java线程中断 interrupt 和 LockSupport解析
这篇文章主要为大家介绍了java线程中断 interrupt 和 LockSupport示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
2023-02-22
java线程中断interrupt和LockSupport的方法是什么
本文小编为大家详细介绍“java线程中断interrupt和LockSupport的方法是什么”,内容详细,步骤清晰,细节处理妥当,希望这篇“java线程中断interrupt和LockSupport的方法是什么”文章能帮助大家解决疑惑,下
2023-07-05
java线程中断之interrupt和stop
interrupt方法当我们调用线程的sleep方法或者join方法时,都可以让某一些线程处于等待状态,调用当前线程的interrupt()方法就可以打断该阻塞状态。interrupt方法不会让线程结束。public void interrupt();// 中
2019-09-17
2024-04-02
2024-04-02
Java多线程之Interrupt中断线程的示例分析
小编给大家分享一下Java多线程之Interrupt中断线程的示例分析,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、测试代码https://gitee.com/zture/spring-test/blob/master
2023-06-15
2024-04-02
2024-04-02
interrupt()和线程终止方式_动力节点Java学院整理
中断线程线程的thread.interrupt()方法是中断线程,将会设置该线程的中断状态位,即设置为true,中断的结果线程是死亡、还是等待新的任务或是继续运行至下一步,就取决于这个程序本身。线程会不时地检测这个中断标示位,以判断线程是否
2023-05-31
2024-04-02
java中线程的中断与终止
线程的中断与终止1、interrupt()、isInterrupted()、interrupted()的作用中断就是线程的一个标识位,它表示一个运行中的线程是否被其他线程调用了中断操作,其他线程可以通过调用线程的interrupt()方法对其进行中断操作,线程
2018-10-05
如何在Java中切断线程
如何在Java中切断线程?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。使用interrupt()切断线程 当一个线程运行时,另一个线程可以调用对应的Thr
2023-05-31
java中isInterrupted()怎么判断线程
这篇文章给大家分享的是有关java中isInterrupted()怎么判断线程的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。Java的优点是什么1. 简单,只需理解基本的概念,就可以编写适合于各种情况的应用程序;
2023-06-14
JAVA多线程之中断机制及处理中断的方法
这篇文章主要记录使用interrupt()方法中断线程,以及如何对InterruptedException进行处理,感觉对InterruptedException异常进行处理是一件谨慎且有技巧的活儿,需要的朋友可以参考下
2023-02-13
Java中的线程中断方法怎么用
本篇内容介绍了“Java中的线程中断方法怎么用”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Java中的线程中断1 线程中断相关方法介绍Ja
2023-07-04
2024-04-02
2024-04-02
java中断线程有哪几种方式
本篇内容主要讲解“java中断线程有哪几种方式”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“java中断线程有哪几种方式”吧!中断 中断(Interrupt)一个线程意味着在该线程完成任务之前
2023-06-25