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里面的内容,这
    样就可以人为控制系统中最多运行的线程数量,免得程序崩溃了

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



  • 相关阅读:
    Pandas
    多进程编程
    python的多线程编程
    Scrapy中集成selenium
    生成器函数yield和使用yield模拟协程
    迭代器和可迭代对象
    HDU5988 Coding Contest(浮点费用流)
    codeforces Technocup 2017
    codeforces724E Goods transportation(欧拉回路)
    UVAlive4097 Yungom(思路)
  • 原文地址:https://www.cnblogs.com/GooKiki/p/Java.html
Copyright © 2011-2022 走看看