如何在 Java 中停止线程?
javaobject oriented programmingprogramming更新于 2024/5/16 9:44:00
每当我们想停止正在运行的线程时,都可以调用 Java 中 Thread 类的 stop() 方法。此方法停止正在运行的线程的执行,并将其从等待线程池中移除并进行垃圾回收。当线程到达其方法的末尾时,它还将自动进入死亡状态。由于线程安全问题,stop() 方法在 Java 中已弃用。
语法
@Deprecated public final void stop()
示例
import static java.lang.Thread.currentThread; public class ThreadStopTest { public static void main(String args[]) throws InterruptedException { UserThread userThread = new UserThread(); Thread thread = new Thread(userThread, "T1"); thread.start(); System.out.println(currentThread().getName() + " is stopping user thread"); userThread.stop(); Thread.sleep(2000); System.out.println(currentThread().getName() + " is finished now"); } } class UserThread implements Runnable { private volatile boolean exit = false; public void run() { while(!exit) { System.out.println("The user thread is running"); } System.out.println("The user thread is now stopped"); } public void stop() { exit = true; } }
输出
main is stopping user thread The user thread is running The user thread is now stopped main is finished now