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();
    }
    }

     线程池工作原理:

     

     线程的拒绝策略:

  • 相关阅读:
    [Next] 六.next的优化
    [Next] 五.next自定义内容
    Mac解决端口占用
    [Next] 四.在next中引入redux
    [Next] 服务端渲染知识补充
    [Next] 三.next自定义服务器和路由
    哪些使用UDP、TCP、IP协议
    IDEA配置git
    ssm整合配置
    git传输远程仓库
  • 原文地址:https://www.cnblogs.com/shanbaoxin/p/11663560.html
Copyright © 2011-2022 走看看