Java多线程不关闭线程

标签 java

我在命令行应用程序中有以下代码。循环完成后,我的应用程序仍在运行。为什么不倒闭呢。从日志中,我可以看到 endIndex 已达到。但应用程序仍在运行?

Executor exec = Executors.newFixedThreadPool(4);
for (int i = startIndex; i <= endIndex; i++) {
        final String spURL = urlPart + i;

        Runnable requestHandler = new Runnable() {
            @Override
            public void run() {
                try {
                    getImageForURL(spURL, 0);
                } catch (IOException ex) {
                } catch (Exception ex) {
                }
            }
        };
        exec.execute(requestHandler);
    }

最佳答案

试试这个

ExecutorService e = Executors.newFixedThreadPool(4);
...
e.shutdown();

关于Java多线程不关闭线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8162417/

相关文章:

java - SWT异常 : Invalid thread access

java - Android OpenGL 点数组

java - 如何从对象列表中获取特定属性?

java - Spring 数据库切换适用于所有用户,但不适用于每个用户

java - 在JAVA中如何读取值直到用户按下回车键?

java - NullPointerException 在actionPerformed 方法中但不在main 中?

java - 如何在 Ant 构建脚本期间运行 JUnit 测试,同时从生成的 jar 中省略测试类?

java - 如何更紧凑地使用Gson的TypeToken?

java - 在 Android 上的 Kotlin 中通过路径设置 imageView

java - 检查字符串是否包含主题标签词