线程池
1.经常创建和销毁线程,使用量特别大的资源
2.提前创建好多个线程放入线程池中,使用时直接获取,使用完放回池中
可以避免频繁的创建和销毁,实现重复利用
3.提高相应的速度(减少了创建线程的时间)
降低资源消耗(重复利用线程池中的线程,不需要每次都创建)
便于线程管理
核心池的大小
最大线程数
线程没有任务时,最多保持多长时间后会终止setKeepAliveTime
1.提供指定线程数量的线程池
/
blic class ThreadDemo05 {
public static void main(String[] args) {
1.提供指定线程数量的线程池
ExecutorService service=Executors.newFixedThreadPool(10);//创建线程池对象
ThreadPoolExecutor ser=(ThreadPoolExecutor)service;
2.设置线程池属性
//当前时间设定
ser.setKeepAliveTime(time, unit);
设置线程池大小
ser.setCorePoolSize(15);
设置最大线程数
ser.setMaximumPoolSize(20);
//执行指定线程的操作,需要提供Runnable或者时Callable接口的实现类对象
service.execute((Runnable) new CallThread());//适用于Runnable
service.submit(new CallThread());//适用于Callable
//关闭连接池
service.shutdown();
}
线程池的使用
最新推荐文章于 2024-08-24 17:09:16 发布