java线程池常用方法征集

java线程池常用方法收集

execute(Runnable command):履行Ruannable类型的任务

submit(task):可用来提交Callable或Runnable任务,并返回代表此任务的Future对象

invokeAll(collection of tasks):执行给定的任务,当所有任务完成时,返回保持任务状态和结果的 Future 列表.

shutdown():在完成已提交的任务后封闭办事,不再接管新任务

shutdownNow():停止所有正在履行的任务并封闭办事。

isTerminated():测试是否所有任务都履行完毕了。

isShutdown():测试是否该ExecutorService已被封闭

 

1、固定大小线程池

import java.util.concurrent.Executors;  

import java.util.concurrent.ExecutorService;

ExecutorService pool = Executors.newFixedThreadPool(2);

pool.execute(t1);

pool.shutdown();

2、单任务线程池

ExecutorService pool = Executors.newSingleThreadExecutor();

3、可变尺寸线程池

ExecutorService pool = Executors.newCachedThreadPool();

4、延迟连接池

import java.util.concurrent.Executors;  

import java.util.concurrent.ScheduledExecutorService;  

import java.util.concurrent.TimeUnit;

ScheduledExecutorService pool = Executors.newScheduledThreadPool(2);

pool.schedule(t4, 10, TimeUnit.MILLISECONDS);

5、单任务延迟连接池

ScheduledExecutorService pool = Executors.newSingleThreadScheduledExecutor();