Java多线程Callable方法详解

多线程实现方式转载自https://blog.youkuaiyun.com/bandenger/article/details/81637034
重点看Callable方法

在这里插入图片描述

以下内容是Callable方法实现多线程过程中涉及到的概念

ExecutorService总共有三个submit方法:

Future<?> submit(Runnable task);
Future submit(Runnable task, T result);
Future submit(Callable task);

实际返回的是FutureTask对象,FutureTask是Future的间接子类
在这里插入图片描述
Future类的是一种异步任务监视器,可以让提交者可以监视任务的执行,同时可以取消任务的执行,也可以获取任务返回结果

public interface Future<V> {
	//尝试取消执行任务
    boolean cancel(boolean mayInterruptIfRunning);
	//查看是否被取消  
    boolean isCancelled();
    //是否执行完成
    boolean isDone();
	//获取线程执行结果
    V get() throws InterruptedException, ExecutionException;
	//延时获取
    V get(long timeout, TimeUnit unit)
        throws InterruptedException, ExecutionException, TimeoutExceptio
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值