zoukankan      html  css  js  c++  java
  • 使用java自带线程池

     

    java提供自带的线程池,而不需要自己去开发一个自定义线程池了。

    线程池类ThreadPoolExecutor在包java.util.concurrent下

     
    ThreadPoolExecutor threadPool= new ThreadPoolExecutor(10, 15, 60, TimeUnit.SECONDS, new LinkedBlockingQueue<Runnable>());
     


    第一个参数10 表示这个线程池初始化了10个线程在里面工作
    第二个参数15 表示如果10个线程不够用了,就会自动增加到最多15个线程
    第三个参数60 结合第四个参数TimeUnit.SECONDS,表示经过60秒,多出来的线程还没有接到活儿,就会回收,最后保持池子里就10个
    第四个参数TimeUnit.SECONDS 如上
    第五个参数 new LinkedBlockingQueue() 用来放任务的集合

    execute方法用于添加新的任务
     
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    package multiplethread;
       
    import java.util.concurrent.LinkedBlockingQueue;
    import java.util.concurrent.ThreadPoolExecutor;
    import java.util.concurrent.TimeUnit;
       
    public class TestThread {
       
        public static void main(String[] args) throws InterruptedException {
               
            ThreadPoolExecutor threadPool= new ThreadPoolExecutor(101560, TimeUnit.SECONDS, newLinkedBlockingQueue<Runnable>());
               
            threadPool.execute(new Runnable(){
       
                @Override
                public void run() {
                    // TODO Auto-generated method stub
                    System.out.println("任务1");
                }
                   
            });
       
        }
       
    }
  • 相关阅读:
    szoj657 【AHSDFZNOI 7.2 WuHongxun】Odd
    cogs2652 秘术「天文密葬法」
    bzoj1026 [SCOI2009]windy数
    bzoj1862/1056: [Zjoi2006]GameZ游戏排名系统
    java-PreparedStatement的用法
    java-JDBC登录注册代码
    java-String Date Calendar之间的转换
    java-如何用eclipse打包jar
    java-通过JDBC操作数据库
    java-JDBC配置驱动程序
  • 原文地址:https://www.cnblogs.com/chinaifae/p/10193780.html
Copyright © 2011-2022 走看看