/*** 创建不同类型的线程池 Executors* * @author */
public class ThreadPoolTest01 {public static void main(String[] args) {//ExecutorService threadPool = Executors.newFixedThreadPool(3); // 创建一个固定大小的线程池,5个线程
//        ExecutorService threadPool = Executors.newCachedThreadPool();    //创建一个可变的线程池,线程个数自己控制ExecutorService threadPool = Executors.newSingleThreadExecutor();    //线程池中只有一个线程,死掉后会有新的线程代替for (int i = 1; i <= 10; i++) {    //向线程池添加10个任务final int taskId = i;threadPool.execute(new Runnable() {@Overridepublic void run() {for (int i = 0; i < 3; i++) {try {Thread.sleep(30);} catch (InterruptedException e) {e.printStackTrace();}System.out.println(Thread.currentThread().getName()+ " loop of " + i + " task of " + taskId);}}});}threadPool.shutdown();    //线程池中的线程都没有任务后关闭
//        threadPool.shutdownNow();    //立刻关闭
    }}

转载于:https://www.cnblogs.com/duwenlei/p/5104850.html

JAVA线程池的创建相关推荐

  1. java(线程池的创建方式,和线程池的原理)

    1.为什么要使用线程池:   减少资源消耗,通过重复的使用已创建好的线程,避免了线程的频繁创建和销毁所造成的消耗 提高响应速度,当任务到达的时候,不需要再去创建,可以直接使用已经创建好的线程就能立即执 ...

  2. JAVA线程池ThreadPoolExecutor创建以及各参数的详细说明

    最近把线程很多的东西都温故了一遍,发现还漏了个线程池,今天看了些线程池的文章,然后加入了自己的理解,总结如下 首先看下一个线程池的最简单的构造方法如下 * @param corePoolSize th ...

  3. java线程池怎么创建_java中的线程池,如何创建?

    Java中的线程池它是线程的容器,或者(换句话说,它是具有执行任务能力的线程的集合). 我们可以使用ThreadPool框架来定位(或实现)线程池. 线程池可以包含多个线程.每当我们执行任何任务时,线 ...

  4. Java线程池使用与原理

    线程池是什么? 我们可以利用java很容易创建一个新线程,同时操作系统创建一个线程也是一笔不小的开销.所以基于线程的复用,就提出了线程池的概念,我们使用线程池创建出若干个线程,执行完一个任务后,该线程 ...

  5. 谈谈java的线程池(创建、机制)

    目录 Executors创建线程池默认方法 自定义线程池 Executors创建线程池默认方法 newFixedThreadPool()方法,该方法返回一个固定数量的线程池,该方法的线程数始终不变,当 ...

  6. java 线程池数量_java线程池及创建多少线程合适

    java线程池 1.以下是ThreadPoolExecutor参数完备构造方法: public ThreadPoolExecutor(int corePoolSize,int maximumPoolS ...

  7. Java线程池的四种创建方式

    Java线程池的四种创建方式 Java使用Thread类来表示线程,所有的线程都是Thread类或者是他的子类.Java有四种方式来创建线程. (1)继承Thread类创建线程 (2)实现Runnab ...

  8. Java同步—线程池的创建和使用

    线程池 构建一个新的线程是有一定代价的,因为涉及到与操作系统的交互.如果程序中需要使用大量生命周期很短的线程,就应该使用线程池. 将Runnable对象交给线程池来执行,就会有一个线程调用run方法, ...

  9. 四种Java线程池用法解析

    四种Java线程池用法解析 本文为大家分析四种Java线程池用法,供大家参考,具体内容如下 http://www.jb51.net/article/81843.htm 1.new Thread的弊端 ...

最新文章

  1. 使用堆内内存HeapByteBuffer的注意事项
  2. 【Vegas原创】SQL case when 用法
  3. Windows下安装Objective-C开发环境
  4. 正则表达式中的小括号用法
  5. GCD Game 博弈论-Nim-质因数应用-质因数个数预处理
  6. 预编译指令与相关宏小结
  7. leetcode374. 猜数字大小
  8. JS_17 ES5,ES6
  9. php 逻辑与运算符使用说明
  10. Java自动化测试框架-05 - 来给你的测试报告化个妆整个形 - (上)(详细教程)
  11. 黄聪:浓缩的才是精华:浅析GIF格式图片的存储和压缩(转)
  12. JAVA实现简单的FTP服务器
  13. 推荐一款配置中心新贵:Nacos,阿里开源,是真的香!!
  14. 高德地图导航SDK使用
  15. php pwuj 挂马,网站挂马原理及实战
  16. C语言中字符‘0‘和‘\0‘,及整数0的区别
  17. python高维数据降维_高维数据降维——主成分分析
  18. mysql 插入微信名有特殊字符的问题
  19. python爬虫(四)数据存储
  20. Ubuntu 22.10 (Kinetic Kudu) 发布

热门文章

  1. 农村树上的野菜“刺老芽”,价格比肉还贵,这是为啥呢?
  2. 女方家长和男方家长第一次见面是怎么样的?
  3. 为什么现在的年轻人越来越不愿意结婚、生子了?
  4. Windows 10 PC 安装 Docker CE
  5. sql高级语法之IF、IFNULL
  6. vector常见用法
  7. 基类成员函数和派生类成员函数不构成重载
  8. oracle停止一切进程,oracle中expdp/impdp进程如何停止
  9. azure blob_在Azure中使用表,blob,队列和文件存储
  10. sql server 加密_列级SQL Server加密概述