线程池图:
1.通过execute(Runnable run)方法来执行任务
threadsPool.execute(new Runnable(){
@override
public void run(){
//code to run.
}
});
//但是execute()方法没有返回值,无法获得任务执行的情况信息。
2.通过submit()方法来提交执行任务:
submit()方法会返回一个future对象,通过future的get()方法,可以获得任务执行情况。get()方法会阻塞直到任务执行完毕。也可以使用get(long timeout, TimeUnit unit)来设置最长阻塞时间。
Future future=executor.submit(harReturnValueTask);
try{
Object o=future.get();
}catch(Exeception e){
}finally{
executor.shutdown();
}