zoukankan      html  css  js  c++  java
  • 线程池

     

    /**
    * 线程池:
    * 主要特点:
    * 线程复用,控制最大并发数,管理线程
    * 第一:降低资源消耗,通过重复利用已创建的线程降低线程创建和销毁造成的消耗。
    * 第二:提高响应速度。当任务到达时,任务可以不需要等待线程创建就能立即执行。
    * 第三:提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,
    * 还会降低系统的稳定性,使用线程池可以进行统一的分配,调优和监控。
    */
    public static void main(String[] args) {
    ExecutorService executorService=Executors.newFixedThreadPool(5);
    //一池子5个工作线程,类似一个银行有五个受理窗口
    ExecutorService executorService1=Executors.newCachedThreadPool();
    //执行很短期异步任务,线程池根据需要创建新线程,但在先前构建的线程可用时将重用它们,可扩容,遇强则强
    try{
    //模拟有10个顾客过来银行办理业务,目前池子里面有五个工作人员提供服务
    for(int i=1;i<=10;i++){
    executorService1.execute(()->{
    System.out.println(Thread.currentThread().getName()+" 办理业务");
    });
    }
    }catch(Exception exception){
    }finally {
    executorService.shutdown();
    }
    }

     线程池工作原理:

     

     线程的拒绝策略:

  • 相关阅读:
    【Web】Google Chrome 浏览器调试禁用缓存
    js基础(对象)
    js基础
    css
    html
    mybatis(mapper映射文件)
    mybatis(核心配置文件的配置)
    linux三种连接方式
    spring
    mybatis(入门案例)
  • 原文地址:https://www.cnblogs.com/shanbaoxin/p/11663560.html
Copyright © 2011-2022 走看看