码迷,mamicode.com
首页 > 编程语言 > 详细

线程池, Callable<V>接口

时间:2019-03-31 19:28:40      阅读:154      评论:0      收藏:0      [点我收藏+]

标签:executor   Fix   多资源   shu   submit   线程池   获取   future   get   

线程池:

概念:线程池,其实就是一个容纳多个线程的容器,其中的线程可以反复使用,省去了频繁创建线程对象的操作,无需反复创建线程而消耗过多资源。

Executors:线程池创建工厂类

ExecutorService:线程池类

ExecutorService er=Executors.newFixedThreadPool(int);返回线程池对象

submit()获取线程池中的某一个线程对象,并执行线程中的call()方法

shutdown();释放资源

 

例:

//获取线程池对象

ExecutorService er=Executors.newFixedThreadPool(2);

//创建线程任务对象

MyRunnable mr=new MyRunnable();//自定义类

//开启线程

er.submit(mr);

//释放

er.shutdown();

 

 

 

Callable<V>接口

 

与Runnable接口功能相似,用来指定线程的任务。其中的call()方法,用来返回线程任务执行完毕后的结果,call方法可抛出异常。

 

Future<V> 用来接收执行结束后的返回结果

 

//创建线程任务

MyCallable mc=new MyCallable();//自定义类,实现Callavle接口,重写call方法 ,有返回值

//创建线程池工厂

ExecutorService es=Executors.newFixedThreadPool(2);

//执行线程任务

Future<Integer> f=es.submit(mc);

//获取返回值

System.out.println(f.get());//.get()方法获取返回值

es.shutdown();

 

线程池, Callable<V>接口

标签:executor   Fix   多资源   shu   submit   线程池   获取   future   get   

原文地址:https://www.cnblogs.com/hhthtt/p/10632622.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!