多线程之自定义线程池

文章展示了如何使用Java的ThreadPoolExecutor来创建一个线程池,详细配置包括核心线程数、最大线程数、空闲线程存活时间、任务队列大小以及任务拒绝策略。当线程池达到最大容量且队列满时,将采用AbortPolicy策略拒绝额外的任务。
摘要由CSDN通过智能技术生成

 假设开一家饭店,每一个服务员只能服务一个客户,有永久服务员和临时招聘服务员。

临时服务员一旦空闲超过一定时间就会被辞退。如果排队的人数过多,会赶走超出的顾客让他们下次再来。

public class 自定义线程池 {
    public static void main(String[] args) {
        /*
        1、核心线程数量
        2、最大线程数
        3、空闲线程最长存活时间
        4、时间单位
        5、任务队列
        6、创建线程工厂->从哪里获得线程(从哪里找人)
        7、任务的拒绝策略
         */

        ThreadPoolExecutor pool=new ThreadPoolExecutor(
                3,//核心线程数量
                6,//最大线程数量
                60,
                TimeUnit.SECONDS,//时间单位
                new ArrayBlockingQueue<>(3),//任务队列
                Executors.defaultThreadFactory(),//创建线程工厂---->制作线程
                //任务拒绝策略单独存在没有意义专门为线程池服务,同时任务拒绝策略又是一个单独的个体
                new ThreadPoolExecutor.AbortPolicy()//这是一个静态内部类,想要使用需要用类名调用--->任务拒绝策略
        );
    }
}

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值