Java并发编程之interrupt方法使用

interrupt方法是Thread中的方法

 以上是源码翻译,当线程调用interrupt时,会先检查是否有权限能够修改线程状态

然后再获取锁对象,再进行打断线程,在使用interrupt方法会情况线程的打断标记,默认情况下,打断标记为false,打断后为true,但如果线程处于sleep或者wait方法时,打断标记会清空例如:

//false -> true  -> false

所以在线程进入sleep或者wait方法时,打断线程要重新标记标记,代码如下:

 打断后会进入catch,然后重新标记打断,而后可以进行料理后事的操作.

今天的分享到此结束

 

TheJing腥
关注 关注
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
JAVA并发编程艺术pdf版
08-08
JAVA并发编程艺术》是Java开发者深入理解和掌握并发编程的一本重要著作,它涵盖了Java并发领域的核心概念和技术。这本书详细阐述了如何在多线程环境下有效地编写高效、可靠的代码,对于提升Java程序员的技能水平...
Java并发编程全景图.pdf
02-09
Java并发编程Java语言中最为复杂且重要的部分之一,它涉及了多线程编程、内存模型、同步机制等多个领域。为了深入理解Java并发编程,有必要了解其核心技术点和相关实现原理,以下将详细介绍文件中提及的关键知识点...
JAVA并发:并发的基础
wangbo199308的博客
09-20 243
1. 创建线程 1.1 Thread类和Runnable接口 1.1.1 继承Thread类 public class ThreadDemo { static class ChildThread extends Thread { @Override public void run() { System.out.println("childThread"); } } public static void mai
学习笔记--Java Interrupt方法
nianmaodu的博客
06-16 286
Interrupt相关方法Java中调用interrupt方法可以中断进程。与之相关的方法有 isInterrupted():返回一个boolean值,用于判断当前现成的打断状态。此方法不会重置打断标记。 interrupted():返回一个boolean值,用于判断当前现成的打断状态。此方法会重置打断标记。 Interrupt中断标记 需要注意的是,当调用interrupt方法大打断的时处于sleep、wait、join的方法时,会触发打断异常,但是打断标记会重置为false。示例程序如下: im
《知识点004:Java使用Thread.interrupt() 中断线程》
最新发布
大大大钢琴
07-27 382
2. 如果本线程是处于阻塞状态:调用线程的wait(), wait(long)或wait(long, int)会让它进入等待(阻塞)状态,或者调用线程的join(), join(long), join(long, int), sleep(long), sleep(long, int)也会让它进入阻塞状态。1、thread.interrupt()方法是中断线程,将会设置该线程的中断状态位,即设置为true,中断的结果线程是死亡、还是等待新的任务或是继续运行至下一步,就取决于这个程序本身。
Java并发编程interrupt 方法详解
小新的博客
02-03 2378
interrupt 方法详解
java多线程中断_Java线程中断
weixin_30343429的博客
02-15 326
首先,一个线程不应该由其他线程来强制中断或停止,而是应该由线程自己自行停止。所以,Thread.stop, Thread.suspend, Thread.resume 都已经被废弃了。Thread.interrupt 的作用其实也不是中断线程,而是 通知线程应该中断了。具体到底中断还是继续运行,应该由被通知的线程自己处理。具体来说,当对一个线程,调用 interrupt() 时:① 如果线程处于...
Java】彻底理清Java多线程开发中的中断(interrupt)方法
JeredYe的博客
12-19 4908
Java】彻底理清Java多线程开发中的中断(interrupt)方法
java并发编程实战源码-JavaConcurrentProgramming:《Java并发编程实战》
05-25
Java并发编程实战》是Java开发者深入理解并发编程的一本经典著作。这本书涵盖了Java多线程和并发库的广泛主题,旨在帮助读者掌握如何在Java环境中有效地设计和实现并发程序。源码JavaConcurrentProgramming-master...
java并发编程实践的.pptx
06-08
根据提供的文档内容,我们可以归纳并深入探讨Java并发编程的一些核心概念和原理,这些知识点对于理解和实践Java并发编程至关重要。 ### JVM内存模型 JVM内存模型是理解Java并发的基础。主要包含以下几个部分: ##...
Javainterrupt使用
qq_34061132的博客
08-05 370
Javainterrupt使用 通常我们会有这样的需求,即停止一个线程。在java的api中有stop、suspend等方法可以达到目的,但由于这些方法使用上存在不安全性,会带来不好的副作用,不建议被使用。具体原因可以参考Why isThread.stopdeprecated。 在本文中,将讨论中断在java中的使用。 中断在java中主要有3个方法interrupt(),isInterrupted()和interrupted()。 interrupt(),在一个线程中调用另一个线程的i..
java interrupt()方法_Java多线程的中断原理和 interrupt() 几个方法简介
weixin_39621044的博客
02-13 160
上节讲到,线程被 wait() 通知后进入等待池,可以由本线程的 interrupt() 方法解救,使本线程可以去重新竞争锁等等。是如何实现的呢?实际上,中断仅仅是在线程对象做一个标记而已,称为中断标志。中断标志默认为false,在线程 t 调用自己的 t.interrupt() 方法后,中断标志就变成true。但是,中断标志为true实际上不会对正常运行的线程产生影响,因为正常运行的线程不会自己...
interrupt方法使用
weixin_44502237的博客
09-14 144
interrupt方法使用
Java中的Interrupt使用
weixin_30410999的博客
04-02 90
初心 用interrupt中断程序 初步实现 public class InterruptionInJava implements Runnable{ @Override public void run() { while (true) { if (Thread.currentThread().isInterrupted()...
Java多线程-线程中断interrupt
dubismile的博客
07-15 662
目录前言示例说明注意事项案例1Object#wait 和 Thread.sleep 差异在哪里总结 前言 这里主要探讨中断常用的三个方法: interrupt()。在一个线程中调用需要中断现成的interrupt()方法,会对该线程发出信号,将中断状态标志为true isInterrupted()。判断当前线程的中断状态。 interrupted()。将线程的中断状态恢复。 主要使用的阻塞三个方法: Object#wait。放弃锁+等待+重新获取锁 Thread#join。【协作】等待某个线程执行完
java interrupt()方法
小王子的花裙子
11-21 1032
Thread.interrupt()并不会中断一个正在运行的线程。但是,如果线程被阻塞,就会抛出一个中断信号,这样线程就得以退出阻塞的状态,使阻塞状态的线程逃离阻塞状态
javainterrupt使用
weixin_43831204的博客
09-08 281
通常我们会有这样的需求,即停止一个线程。在java的api中有stop、suspend等方法可以达到目的,但由于这些方法使用上存在不安全性,会带来不好的副作用,不建议被使用。具体原因可以参考Why is Thread.stop deprecated。 在本文中,将讨论中断在java中的使用。 中断在java中主要有3个方法interrupt(),isInterrupted()和interrupted()。 interrupt(),在一个线程中调用另一个线程的interrupt()方法,即会向那个线程发
java中的interrupt()方法
liangxn
09-30 9536
interrupt() 方法只是改变中断状态而已,它不会中断一个正在运行的线程。如果线程被Object.wait, Thread.join和Thread.sleep三种方法之一阻塞,此时调用该线程的interrupt()方法,那么该线程将抛出一个 InterruptedException中断异常。 1. sleep() &interrupt() 线程A正在使用sleep()暂停着: Thr...
线程中Interrupt方法使用
a695861652的博客
03-09 628
线程中Interrupt方法使用 程序中,有些线程的终端需要外部干预,比如线程中存在while(true)循环,或者存在一些阻塞操作,比如 sleep、wait、join等。 中断线程的方式,如果直接使用stop、suspend等方法,对程序来说是不太严谨的,这些方法类似于直接杀死线程,可能会造成数据问题。 interrupt方法使用可以解决该问题,调用指定线程的该方法,表示向指定线程发起通知,可以执行中断线程的操作了,而具体什么时候执行,由线程自己决定,这种方式可以让程序处理更加严谨。 循环中断 pu
Java并发编程深度解析
Java并发编程主要关注如何在多线程环境中有效地管理共享资源,确保数据的一致性和正确性。核心概念包括线程的创建、同步、通信以及性能优化。 2. **概念** - **Java内存模型(JMM)**:JMM定义了线程之间共享变量...
写文章

热门文章

  • JUC之CountDownlatch原理 223
  • JUC并发编程之AtomicInteger使用 208
  • Java并发编程之interrupt方法使用 180
  • JUC之CountDownlatch使用 160
  • MySQL语句执行顺序 147

最新文章

  • JUC并发编程之AtomicInteger使用
  • JUC之CountDownlatch原理
  • JUC之CountDownlatch使用
2022年5篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TheJing腥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家安陆玻璃钢造型雕塑玻璃钢雕塑龙骨邳州主题商场美陈玻璃钢花盆适合种花吗韶关小品玻璃钢动物雕塑中牟景观玻璃钢雕塑西山区玻璃钢雕塑公司玻璃钢雕塑产品国家标准宿迁玻璃钢景观雕塑设计河北节庆商场美陈价钱深圳市玻璃钢花盆信阳泡沫校园玻璃钢景观雕塑玻璃钢雕塑十大英模玻璃钢大型茶壶雕塑价格吉林玻璃钢仿铜雕塑定制北京装饰商场美陈厂家直销武汉红色玻璃钢花盆桂林玻璃钢座椅雕塑厂家玻璃钢雕塑葫芦玻璃钢人物泡沫雕塑生产厂家鹤壁室内玻璃钢雕塑兰州玻璃钢雕塑生产厂家玻璃钢雕塑直播东阳玻璃钢雕塑辽宁景区玻璃钢雕塑生产厂家商场樱花美陈扬中玻璃钢雕塑定制福建玻璃钢骆驼雕塑天津高质量玻璃钢雕塑图片河南常见商场美陈有哪些香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化