java多线程之停止线程的方法实例代码详解
程序员文章站
2023-12-02 23:51:58
和线程停止相关的三个方法
/*
中断线程。如果线程被wait(),join(),sleep()等方法阻塞,调用interrupt()会清除线程中断状态,并收到i...
和线程停止相关的三个方法
/* 中断线程。如果线程被wait(),join(),sleep()等方法阻塞,调用interrupt()会清除线程中断状态,并收到interruptedexception异常。另外interrupt();对于isalive()返回false的线程不起作用。 */ public void interrupt(); /* 静态方法,判断线程中断状态,并且会清除线程的中断状态。所以连续多次调用该方法,第二次之后必定返回false。另外,isalive()用于判断线程是否处于存活状态,如果isalive()返回false,interrupted()也必定返回false。 */ public static boolean interrupted(); /* 判断线程中断状态,但不会清除线程中断状态。另外,isalive()用于判断线程是否处于存活状态,如果isalive()返回false,interrupted()也必定返回false。 */
public boolean isinterrupted();线程停止的几种情况:
1: 使用退出标记,run方法执行完毕,线程正常退出。
2: 使用stop()方法,已过时的方法,不推荐。
3: 使用interrupt()方法中断线程。
interrupt()
单独调用这个方法并不能中断线程,只是打了一个中断状态的标记。或者说是将线程状态更改为中断状态。
中断线程可以通过以下几种方法。
- 在线程内部抛出异常。
- 在线程内部使用return结束线程。
总结
以上所述是小编给大家介绍的java多线程之停止线程的方法实例代码详解,希望对大家有所帮助
推荐阅读
-
java多线程之停止线程的方法实例代码详解
-
Java多线程join方法实例代码
-
java多线程复制文件的实例代码
-
Java多线程实现简易微信发红包的方法实例
-
Java多线程批量数据导入的方法详解
-
Java面向对象之继承性的实例代码详解
-
荐 Java中多线程的使用(超级超级详细)线程安全+线程锁原理解析+保证线程安全的三种方式 (同步代码块+同步方法+lock锁) 5
-
在IntelliJ IDEA中多线程并发代码的调试方法详解
-
Java多线程下的其他组件之CyclicBarrier、Callable、Future和FutureTask详解
-
Java多线程的wait(),notify(),notifyAll()、sleep()和yield()方法使用详解