0
点赞
收藏
分享

微信扫一扫

126.-线程池-参数详解__

萨摩斯加士奇 2022-04-30 阅读 79
package com.itheima.MythoeadPool;

import java.util.concurrent.ArrayBlockingQueue;
import java.util.concurrent.Executors;
import java.util.concurrent.ThreadPoolExecutor;
import java.util.concurrent.TimeUnit;

public class MyThreadPooDemo4 {
    //1.核心线程数量
    //2.最大线程数
    //3.空闲线程最大存活时间
    //4.时间单位---TimeUnit
    //5.认为队列---让任务在队列中等待,等有空闲,再从这个队列中获取任务执行
    //6.创建线程工厂--按照默认方式创建对象
    //7.任务的拒绝策略--//什么时候拒绝任务,当提交的任务>大于池子中最大线程数量+队列容量
                     //如何拒绝
    public static void main(String[] args) {

        ThreadPoolExecutor pool=new ThreadPoolExecutor(
                2,
                5,
                2,
                TimeUnit.SECONDS,
                new ArrayBlockingQueue<>(10),
                Executors.defaultThreadFactory(),
                new ThreadPoolExecutor.AbortPolicy());


        for (int i=1;i<=15;i++) {
            pool.submit(new MyRunnable());
        }


        pool.shutdown();

    }
}
package com.itheima.MythoeadPool;

public class MyRunnable implements Runnable{
    @Override
    public void run() {
        System.out.println(Thread.currentThread().getName()+"在执行了");
    }
}
举报

相关推荐

0 条评论