线程池

思路:提前创建好多个线程,放进线程池,使用时直接到池中取,使用完放回池中,这样就可以重复利用,避免频繁的
创建和销毁,影响其性能

线程池相关API:ExecutorService与Executors
ExecutorService真正的线程池接口,常见子类:ThreadPoolExecutor
-void execute(Runnable commond):执行任务/命令,没有返回值,一般用于执行Runnable 接口
-<T>Future<T>submit(Callable<T>task):执行任务,有返回值,一般用于执行Callable接口
-void shutdown():关闭连接池
Executors:工具类、线程池的工厂类,用于创建不同类型的线程池。

package syn;

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

public class TestPool {
    public static void main(String[] args) {
        //创建线程池
        ExecutorService service = Executors.newFixedThreadPool(10);
        //执行
        service.execute(new MyThread());
        service.execute(new MyThread());
        service.execute(new MyThread());
        service.execute(new MyThread());
        //关闭线程池
        service.shutdown();
    }
}

class MyThread implements Runnable{
    @Override
    public void run() {
        System.out.println("run........");
    }
}

 

posted @ 2020-07-24 21:50  DannyBoy~  阅读(87)  评论(0编辑  收藏  举报