JavaTM 2 Platform
Standard Ed. 5.0

接口 java.util.concurrent.Future
的使用

使用 Future 的软件包
java.util.concurrent 在并发编程中很常用的实用工具类。 
 

java.util.concurrentFuture 的使用
 

java.util.concurrentFuture 的子接口
 interface ScheduledFuture<V>
          一个延迟的、结果可接受的操作,可将其取消。
 

实现 Futurejava.util.concurrent 中的类
 class FutureTask<V>
          可取消的异步计算。
 

返回 Futurejava.util.concurrent 中的方法
 Future<V> ExecutorCompletionService.poll()
           
 Future<V> CompletionService.poll()
          检索并移除表示下一个已完成任务的 Future,如果不存在这样的任务,则返回 null
 Future<V> ExecutorCompletionService.poll(long timeout, TimeUnit unit)
           
 Future<V> CompletionService.poll(long timeout, TimeUnit unit)
          检索并移除表示下一个已完成任务的 Future,如果目前不存在这样的任务,则将等待指定的时间(如果有必要)。
<T> Future<T>
ScheduledThreadPoolExecutor.submit(Callable<T> task)
           
<T> Future<T>
ExecutorService.submit(Callable<T> task)
          提交一个返回值的任务用于执行,返回一个表示任务的未决结果的 Future。
<T> Future<T>
AbstractExecutorService.submit(Callable<T> task)
           
 Future<V> ExecutorCompletionService.submit(Callable<V> task)
           
 Future<V> CompletionService.submit(Callable<V> task)
          提交要执行的值返回任务,并返回表示挂起的任务结果的 Future。
 Future<?> ScheduledThreadPoolExecutor.submit(Runnable task)
           
 Future<?> ExecutorService.submit(Runnable task)
          提交一个 Runnable 任务用于执行,并返回一个表示该任务的 Future。
 Future<?> AbstractExecutorService.submit(Runnable task)
           
<T> Future<T>
ScheduledThreadPoolExecutor.submit(Runnable task, T result)
           
<T> Future<T>
ExecutorService.submit(Runnable task, T result)
          提交一个 Runnable 任务用于执行,并返回一个 Future,该 Future 表示任务一旦完成后即返回给定的结果。
<T> Future<T>
AbstractExecutorService.submit(Runnable task, T result)
           
 Future<V> ExecutorCompletionService.submit(Runnable task, V result)
           
 Future<V> CompletionService.submit(Runnable task, V result)
          提交要执行的 Runnable 任务,并返回一个表示任务完成的 Future,可以提取或轮询此任务。
 Future<V> ExecutorCompletionService.take()
           
 Future<V> CompletionService.take()
          检索并移除表示下一个已完成任务的 Future,如果目前不存在这样的任务,则等待。
 

返回变量类型为 Future 的类型的 java.util.concurrent 中的方法
<T> List<Future<T>>
ExecutorService.invokeAll(Collection<Callable<T>> tasks)
          执行给定的任务,当所有任务完成时,返回保持任务状态和结果的 Future 列表。
<T> List<Future<T>>
AbstractExecutorService.invokeAll(Collection<Callable<T>> tasks)
           
<T> List<Future<T>>
ExecutorService.invokeAll(Collection<Callable<T>> tasks, long timeout, TimeUnit unit)
          执行给定的任务,当所有任务完成或超时期满时(无论哪个首先发生),返回保持任务状态和结果的 Future 列表。
<T> List<Future<T>>
AbstractExecutorService.invokeAll(Collection<Callable<T>> tasks, long timeout, TimeUnit unit)
           
 

类型变量类型为 Futurejava.util.concurrent 中的构造方法参数
ExecutorCompletionService(Executor executor, BlockingQueue<Future<V>> completionQueue)
          使用为执行基本任务而提供的执行程序创建一个 ExecutorCompletionService,并将所提供的队列作为其完成队列。
 


JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策