JDK源码解读之 Callable

167 阅读1分钟

前言

  • 一个返回结果并可能引发异常的任务。
  • 实现者定义了一个没有参数的单一方法,称为{@code call}。
  • {@code Callable}接口与{@link java.lang.Runnable}相似,两者均适用于其实例可能由另一个线程执行的类。
  • 但是,{@code Runnable}不会返回结果,也不能引发已检查的异常。
  • {@link Executors}类包含实用程序方法,可从其他常见形式转换为{@code Callable}类。

源码

package java.util.concurrent;

@FunctionalInterface
public interface Callable<V> {
    /**
     * 返回一个结果,或者抛出一个异常。
     */
    V call() throws Exception;
}