java - 需要停止或终止线程

标签 java threadpool

因为我编写了一个简单的Java程序来调用Thread。下面是我的代码

public class ThreadPoolForParallelExec {

    public static void main(String args[]) {
        ExecutorService service = Executors.newFixedThreadPool(5);
        for (int i = 0; i < 5; i++) {
            service.submit(new Task(i));
        }
        service.shutdown();
    }
}

final class Task implements Runnable {
    private int taskId;

    public Task(int id) {
        this.taskId = id;
    }

    @Override
    public void run() {
        myclient.intializeAndConnectRemoteMachine(taskId);
        Thread.currentThread().stop();
        Thread.currentThread().isInterrupted();
    }
}

但是,我需要终止执行程序或线程。我尝试了 Thread.currentThread().stop();和 Thread.currentThread().stop();两者都不起作用:(请您提出建议。

最佳答案

一般来说,杀死线程是一个坏主意,事实上,最新的 Java 规范不赞成这样做。

相反,尝试在线程本身内优雅地完成线程。这就是一致的结构。

关于java - 需要停止或终止线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22321501/

相关文章:

android - 循环内的 AsyncTask

vb.net - 如何使用 ThreadPool 而不每次都创建 Sub foo(o as object) ?

java - 克隆存储库时 JGit 错误

java - 在 Lucene (java) 中计算所有结果的最快方法

java - 这个 double 是什么格式以及如何转换它?

C++ Boost::ASIO 线程池问题

java - Java中 float 组的数据对齐算法

java - 在 Java 中如何通过 int 引用字符串?

java - 固定线程池中的线程阻塞

c# - .NET 线程像 Node.js/V8?