线程池

本文深入探讨了Java中线程池的四种类型:缓存线程池、单一线程池、固定线程池和定时调度线程池。通过具体实例展示了不同线程池的创建与使用,帮助读者理解如何有效管理和控制线程的执行。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

线程池

package 多线程;

import java.util.concurrent.*;

/**
 * 线程池表示的是可以利用框架控制多个线程的使用,也就是不用自己new多个Thread线程
 */

class TestnewCachedThreadPool{
    //无限创建多个线程
    public  void test(){
        ExecutorService executorService=Executors.newCachedThreadPool();
        for(int x=0;x<10;x++){
            //创建10个线程
            executorService.submit(()->{
                System.out.println(Thread.currentThread().getName());
            });
        }
        executorService.shutdown();
    }
}

class TestnewSingleThreadExecutor{
    //创建1个线程,10个任务交给一个线程
    public  void test(){
        ExecutorService executorService=Executors.newSingleThreadExecutor();
        for(int x=0;x<10;x++){
            //创建1个线程
            executorService.submit(()->{
                System.out.println(Thread.currentThread().getName());
            });
        }
        executorService.shutdown();
    }
}

class TestnewFixedThreadPool{
    //创建固定的线程数
    public  void test(){
        ExecutorService executorService=Executors.newFixedThreadPool(2);
        for(int x=0;x<10;x++){
            //创建1个线程
            executorService.submit(()->{
                System.out.println(Thread.currentThread().getName());
            });
        }
        executorService.shutdown();
    }
}

class TestnewScheduledThreadPool{
    //创建定时调度器
    public  void test(){
        ScheduledExecutorService executorService=Executors.newScheduledThreadPool(5);
        for(int x=0;x<10;x++){
            //延迟3秒后 每2秒创建5个线程,
           executorService.scheduleAtFixedRate(()->{
               System.out.println(Thread.currentThread().getName());
           },3,2,TimeUnit.SECONDS);
        }
    }
}

public class ThreadPool {
    public static void main(String  args[]){
//        TestnewCachedThreadPool testnewCachedThreadPool=new TestnewCachedThreadPool();
//        testnewCachedThreadPool.test();

//        TestnewSingleThreadExecutor testnewSingleThreadExecutor=new TestnewSingleThreadExecutor();
//        testnewSingleThreadExecutor.test();

//        TestnewFixedThreadPool testnewFixedThreadPool=new TestnewFixedThreadPool();
//        testnewFixedThreadPool.test();

          TestnewScheduledThreadPool testnewScheduledThreadPool=new TestnewScheduledThreadPool();
          testnewScheduledThreadPool.test();
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值