线程池的代码实现

线程池的代码实现

  Executors:线程池的工厂类,用来生产线程

  Executors中的静态方法:

static ExecutorService newFixedThreadPool(int nThreads)
          创建一个可重用固定线程集合的线程池,以共享的无界队列方式来运行这些线程

  参数:int nThreads:创建池中包含的线程数量

  返回值:ExecutorService接口,返回的是ExecutorService接口实现类对象,可以使用ExecutorService接口接受

  submit:提交一个Runnable 任务用于执行

  关闭/销毁线程池的方法:void shudown()

线程池的使用步骤:

  1,使用线程池的工厂类Executors里面提供的静态方法newFixedThreadPool生产一个指定线程数量的线程池

  2,创建一个类,实现Runnable接口,重点Run方法,设置线程任务

  3,调用ExecutorService中的方法submit,传递线程任务(实现类)开启线程,执行run方法

  4,调用ExecutorService中的方法shutdown销毁线程池(不建议执行)

案例:

  

package Runnable;

import java.util.concurrent.Executors;

public class ExecutorService {
/**
* 线程池的使用步骤:
*
*   1,使用线程池的工厂类Executors里面提供的静态方法newFixedThreadPool生产一个指定线程数量的线程池
*   2,创建一个类,实现Runnable接口,重点Run方法,设置线程任务
*
*   3,调用ExecutorService中的方法submit,传递线程任务(实现类)开启线程,执行run方法
*
*   4,调用ExecutorService中的方法shutdown销毁线程池(不建议执行)
* @param args
*/
public static void main(String[] args) {
//  1,使用线程池的工厂类Executors里面提供的静态方法newFixedThreadPool生产一个指定线程数量的线程池
java.util.concurrent.ExecutorService pool = Executors.newFixedThreadPool(2);
// 3,调用ExecutorService中的方法submit,传递线程任务(实现类)开启线程,执行run方法
pool.submit(new Runnableimpl());
pool.submit(new Runnableimpl());
pool.submit(new Runnableimpl());

}
}

 

posted @ 2022-07-12 10:34  一位程序袁  阅读(50)  评论(0编辑  收藏  举报