zoukankan      html  css  js  c++  java
  • Java多线程之Callable、Future和FutureTask

    ExecutorService、Callable、Future实现有返回结果的线程
    返回结果的线程是在JDK1.5中引入的新特征,有了这种特征就不需要再为了得到返回值而大费周折了。而且自己实现了也可能漏洞百出。
    可返回值的任务必须实现Callable接口。类似的,无返回值的任务必须实现Runnable接口。
    执行Callable任务后,可以获取一个Future的对象,在该对象上调用get就可以获取到Callable任务返回的Object了。
    注意:get方法是阻塞的,即:线程无返回结果,get方法会一直等待。
    再结合线程池接口ExecutorService就可以实现传说中有返回结果的多线程了。

    ExecutorService

    public interface ExecutorService extends Executor
    public interface Executor

    Callable

    public interface Callable<V> 

    Runnable

    public interface Runnable

    Future

    public interface Future<V> 

    FutureTask

    public class FutureTask<V> implements RunnableFuture<V> 
    public interface RunnableFuture<V> extends Runnable, Future<V> 
    public interface Runnable 
    public interface Future<V>
  • 相关阅读:
    第11组 Beta冲刺(1/5)
    第11组 Alpha事后诸葛亮
    第11组 Alpha冲刺(6/6)
    第11组 Alpha冲刺(5/6)
    软工实践个人总结
    第11组 Beta版本演示
    第11组 Beta冲刺(5/5)
    第11组 Beta冲刺(4/5)
    第11组 Beta冲刺(3/5)
    第11组 Beta冲刺(2/5)
  • 原文地址:https://www.cnblogs.com/DirWang/p/11280451.html
Copyright © 2011-2022 走看看