Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

java threadpoolexecutor创建线程池

作者:忽然之间   发布日期:2025-11-30   浏览:84

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadPoolExecutor;

public class ThreadPoolExample {
    public static void main(String[] args) {
        // 创建一个固定大小的线程池,线程池中有3个线程
        ExecutorService executorService = Executors.newFixedThreadPool(3);

        // 将ExecutorService转换为ThreadPoolExecutor以便获取更多线程池信息
        if (executorService instanceof ThreadPoolExecutor) {
            ThreadPoolExecutor threadPoolExecutor = (ThreadPoolExecutor) executorService;

            // 提交任务到线程池中执行
            for (int i = 0; i < 10; i++) {
                threadPoolExecutor.submit(() -> {
                    System.out.println("Task is running in thread: " + Thread.currentThread().getName());
                });
            }

            // 关闭线程池
            threadPoolExecutor.shutdown();
        }
    }
}

解释说明:

  1. 创建线程池:使用Executors.newFixedThreadPool(3)创建了一个固定大小为3的线程池。这意味着线程池中最多同时运行3个线程。
  2. 类型转换:将ExecutorService转换为ThreadPoolExecutor,以便可以访问更多关于线程池的详细信息和配置。
  3. 提交任务:通过submit()方法向线程池提交了10个任务。每个任务会打印当前执行任务的线程名称。
  4. 关闭线程池:调用shutdown()方法来优雅地关闭线程池,确保所有已提交的任务都执行完毕后再关闭。

如果你需要更复杂的线程池配置(如自定义核心线程数、最大线程数、队列等),可以使用ThreadPoolExecutor的构造函数进行更详细的配置。

上一篇:java nohup

下一篇:java urldecoder

大家都在看

java判断是windows还是linux

java连接数据库的代码

java djl

ubuntu 卸载java

es java api

java读取excel中的图片

java新建

java sort用法

java collections.sort

java file类的方法

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站