JavaTM 2 Platform
Standard Ed. 5.0

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

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

java.util.concurrentCallable 的使用
 

返回 Callablejava.util.concurrent 中的方法
static Callable<Object> Executors.callable(PrivilegedAction action)
          返回 Callable 对象,调用它时可运行给定特权的操作并返回其结果。
static Callable<Object> Executors.callable(PrivilegedExceptionAction action)
          返回 Callable 对象,调用它时可运行给定特权的异常操作并返回其结果。
static Callable<Object> Executors.callable(Runnable task)
          返回 Callable 对象,调用它时可运行给定的任务并返回 null
static
<T> Callable<T>
Executors.callable(Runnable task, T result)
          返回 Callable 对象,调用它时可运行给定的任务并返回给定的结果。
static
<T> Callable<T>
Executors.privilegedCallable(Callable<T> callable)
          返回 Callable 对象,调用它时可在当前的访问控制上下文中执行给定的 callable 对象。
static
<T> Callable<T>
Executors.privilegedCallableUsingCurrentClassLoader(Callable<T> callable)
          返回 Callable 对象,调用它时可在当前的访问控制上下文中,使用当前上下文类加载器作为上下文类加载器来执行给定的 callable 对象。
 

参数类型为 Callablejava.util.concurrent 中的方法
static
<T> Callable<T>
Executors.privilegedCallable(Callable<T> callable)
          返回 Callable 对象,调用它时可在当前的访问控制上下文中执行给定的 callable 对象。
static
<T> Callable<T>
Executors.privilegedCallableUsingCurrentClassLoader(Callable<T> callable)
          返回 Callable 对象,调用它时可在当前的访问控制上下文中,使用当前上下文类加载器作为上下文类加载器来执行给定的 callable 对象。
<V> ScheduledFuture<V>
ScheduledThreadPoolExecutor.schedule(Callable<V> callable, long delay, TimeUnit unit)
           
<V> ScheduledFuture<V>
ScheduledExecutorService.schedule(Callable<V> callable, long delay, TimeUnit unit)
          创建并执行在给定延迟后启用的 ScheduledFuture。
<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。
 

类型变量类型为 Callablejava.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)
           
<T> T
ExecutorService.invokeAny(Collection<Callable<T>> tasks)
          执行给定的任务,如果某个任务已成功完成(也就是未抛出异常),则返回其结果。
<T> T
AbstractExecutorService.invokeAny(Collection<Callable<T>> tasks)
           
<T> T
ExecutorService.invokeAny(Collection<Callable<T>> tasks, long timeout, TimeUnit unit)
          执行给定的任务,如果在给定的超时期满前某个任务已成功完成(也就是未抛出异常),则返回其结果。
<T> T
AbstractExecutorService.invokeAny(Collection<Callable<T>> tasks, long timeout, TimeUnit unit)
           
 

参数类型为 Callablejava.util.concurrent 中的构造方法
FutureTask(Callable<V> callable)
          创建一个 FutureTask,一旦运行就执行给定的 Callable
 


JavaTM 2 Platform
Standard Ed. 5.0

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

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