java.lang.InterruptedException: sleep interrupted

这篇具有很好参考价值的文章主要介绍了java.lang.InterruptedException: sleep interrupted。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

java.lang.InterruptedException: sleep interrupted
	at java.lang.Thread.sleep(Native Method)
	at com.test.thread.CallableTest.call(CallableTest.java:34)
	at com.test.thread.CallableTest.call(CallableTest.java:6)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
	at java.lang.Thread.run(Thread.java:748)
Picked up JAVA_TOOL_OPTIONS:  -Dfile.encoding=UTF-8

线程的暂停有两个方法 shutdown 与shutdownNow 两个方法的调用都会阻止新任务的提交,区别是关于已经提交未完成任务的处理以及线程终端的处理,shutdown会继续执行并且完成所有未执行的任务,shutdownNow 会清除所有未执行的任务并且在运行线程上调用interrupt() 。
我的理解:该异常产生的原因是有任务还没有执行完成,就调用shutdownNow方法。
​ 调用shutdownnow()方法退出线程池时,线程池会向正在运行的任务发送Interrupt,任务中的阻塞操作会响应这个中断并抛出InterruptedException,但同时会清除线程的Interrupted 状态标识,导致后续流程感知不到线程的中断了。要想立即停止线程池中任务最好的方式就是直接向任务传递退出信号。
参考:
https://blog.csdn.net/liulipuo/article/details/39004279
https://blog.csdn.net/mucaoyx/article/details/109153721文章来源地址https://www.toymoban.com/news/detail-524692.html

到了这里,关于java.lang.InterruptedException: sleep interrupted的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • java八股文面试[多线程]——sleep wait join yield

          sleep和wait有什么区别 sleep 方法和 wait 方法都是用来将线程进入 阻塞状态 的,并且 sleep 和 wait 方法都可以响应 interrupt 中断,也就是线程在休眠的过程中,如果收到中断信号,都可以进行响应并中断,且都可以抛出 InterruptedException 异常,那 sleep 和 wait 有什么区别呢?

    2024年02月11日
    浏览(36)
  • java.lang.RuntimeException: java.lang.NullPointerException

    空指针异常 一般导致空指针异常的是 1.对象未初始化:当一个对象被声明但未被实例化,或者被赋值为null时,尝试调用该对象的方法或访问其属性都会导致空指针异常 例如: 2.方法返回null:如果一个方法返回null,而调用者没有检查返回值是否为null,直接对返回值进行操作就

    2024年02月02日
    浏览(64)
  • Unable to make protected final java.lang.Class java.lang.ClassLoader.defineClass(java.lang.String,b

    异常信息提示:  添加坐标后,一启动服务就报错,启动失败。 解决方法是添加虚拟机选项: 再次启动效果:成功启动。  

    2024年01月16日
    浏览(42)
  • Cause: java.lang.ClassCastException: java.lang.Integer cannot be cast to java.lang.Long错误的详细解决方法

    今天写好 hive表导入的回调 的接口,如下代码所示: 启动 postman 访问该接口,确报出如下错误: 即 Cause: java.lang.ClassCastException: java.lang.String cannot be cast to java.lang.Long 根据 java.lang.ClassCastException 可知,这是 java 类型转换的异常错误。 其次,再将错误信息 java.lang.String cannot b

    2024年02月13日
    浏览(30)
  • 已解决java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.String异常的

    已解决java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.String异常的正确解决方法,亲测有效!!! java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.String java.lang.ClassCastException: class java.lang.Integer cannot be cast to class java.lang.String的错误通常发

    2024年01月21日
    浏览(45)
  • java.lang.String cannot be cast to java.lang.Integer异常

    在java中无法直接将String类型强制转换为Integer类型。 Java中的String和Integer是两种不同的数据类型,它们之间不能直接进行强制类型转换。这主要是因为它们在底层的表示方式和数据结构上有很大的差别。 String是一个不可变的字符序列,用于表示文本数据。它是通过字符数组来

    2024年02月05日
    浏览(34)
  • Machine Interrupt Registers

    bit [15:0]记录interrupt的原因; bit[max:16]时user自定义的,默认不使用; 一个中断,trap to M-mode的条件如下: 当前是M-mode, mstatus.MIE==1,或者当前的权限等级低于M-mode, 此时不管当前的xIE是否为1,M-mode的中断总是有效的; 满足上面的条件后,还需要mip/mie对应bit的值都设置为1; 如

    2024年02月02日
    浏览(32)
  • Cause: java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.Str

    这个异常意味着你尝试在Java程序中比较一个java.util.Date对象和一个java.lang.String对象,这是无效的比较。Java中的不同类型的对象只能在特定的比较操作中使用。通常,日期对象被用于表示日期和时间信息,而字符串对象用于表示文本信息。因此,Java不允许直接将它们进行比较

    2024年02月16日
    浏览(35)
  • 报错throws java.lang.ClassFormatError accessible: module java.base does not “opens java.lang“

    有时候项目在前端浏览某些页面时,会突然报如下错误: 与此同时,后端也会跟着报错:  问题表现出来的现象就是非法反射访问警告,之前系统运行都没问题,怎么突然就报这种错误哪,会把人搞得措手不及、不知如何处理。 其实这里有一个非常重要的线索: throws java

    2024年02月07日
    浏览(28)
  • 解决错误 “java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String“ 的

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码吧。 在 Java 开发中,有时会遇到错误信息 “java.lang.IllegalArgumentException: invalid comparison: java.util.Date and java.lang.String”,

    2024年02月10日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包