callable什么意思?如何使用Callable?

KLQ 2020-06-12 15:33:12 java常见问答 8296

下面要给大家讲到是callable,你对于callable有多了解呢?你知道什么是callable吗?又应该如何使用callable呢?接下来一起通过下面的文章来进行一下了解吧。

一、什么是callable?

callable位于java.util.concurrent包下,callable也是一个接口。

在callable当中,只声明了一个方法。

这个方法叫做call():

public interface Callable < V >
{
    /**
     * Computes a result, or throws an exception if unable to do so.
     *
     * @return computed result
     * @throws Exception if unable to compute a result
     */
    V call() throws Exception;
}

我们可以看到,这个是一个泛型接口。

call()函数返回的类型就是传递进来的V类型。

对callable有了最基本的了解之后,接下来要给大家介绍的就是和如何使用callable相关的内容了,那么怎么去使用callable呢?你又了解多少?一起来了解一下。

二、如何使用callable?

其实,在一般的情况之下,都是要配合ExecutorService来使用的。

在ExecutorService来使用的接口当中,声明了若干个submit方法的重载版本。

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

第一个submit方法里面的参数类型就是Callable。

在大多数的情况下,会使用第一个submit方法和第三个submit方法。

至于第二个submit方法的话,就是用的比较的少了。

好啦这就是关于callable以及callable使用的简单介绍了,你都了解了吧,之前还给大家介绍过java callable用法示例的一些内容,是一些java实例合集,比较的全面,大家可以去了解一下。

更多和callable相关的内容,可以继续通过java实例常见问题栏目来了解哦。

推荐阅读:

使用Callable+Future获取执行结果java

java 使用Callable+FutureTask获取执行结果