zoukankan      html  css  js  c++  java
  • Java --关于线程池的理解Executors.newFixedThreadPool(int n)

     1 /*1. 在这个里面有先创造了一个线程池,可以容纳2个对象Executors.newFixedThreadPool(2);
     2      2. 在程序里面向线程池中submit了三次,也就表示有三个等待执行的
     3      体现出线程池的作用:
     4       不管submit了几个线程,线程池中最多运行2个,
     5      多出来的那个还是用线程池中开辟好的资源,然后执行完run里面的内容,这
     6      样就可以人为控制系统中最多运行的线程数量,免得程序崩溃了
     7     * */
     8  public static void main(String[] args) {
     9         Teacher teacher = new Teacher("Tom");
    10         ExecutorService  executorService = Executors.newFixedThreadPool(2);
    11         MyRunable myRunable = new MyRunable(teacher);
    12         executorService.submit(myRunable);
    13         executorService.submit(myRunable);
    14         executorService.submit(myRunable);
    15 
    16     }

    主要作用是:
    1. 在这个里面有先创造了一个线程池,可以容纳2个对象Executors.newFixedThreadPool(2);
    2. 在程序里面向线程池中submit了三次,也就表示有三个等待执行的
    体现出线程池的作用:
    不管submit了几个线程,线程池中最多运行2个,
    多出来的那个还是用线程池中开辟好的资源,然后执行完run里面的内容,这
    样就可以人为控制系统中最多运行的线程数量,免得程序崩溃了

    所以,运行出来的结果是:



  • 相关阅读:
    ASP.NET常用的三十三种代码
    asp.net获取IP地址
    Inside Microsoft Sql Server 2005 TSQL Programming 学习笔记
    动态SQL与SQL注入(一)动态SQL
    (二)SQL 注入
    WCF 安全
    C# 运算符重载和 implicit关键字
    分页那回事
    thinking
    Moss css
  • 原文地址:https://www.cnblogs.com/GooKiki/p/Java.html
Copyright © 2011-2022 走看看