FutureTask 类

定义

可取消的异步计算。

[Android.Runtime.Register("java/util/concurrent/FutureTask", DoNotGenerateAcw=true)]
[Java.Interop.JavaTypeParameters(new System.String[] { "V" })]
public class FutureTask : Java.Lang.Object, IDisposable, Java.Interop.IJavaPeerable, Java.Util.Concurrent.IRunnableFuture
[<Android.Runtime.Register("java/util/concurrent/FutureTask", DoNotGenerateAcw=true)>]
[<Java.Interop.JavaTypeParameters(new System.String[] { "V" })>]
type FutureTask = class
    inherit Object
    interface IRunnableFuture
    interface IRunnable
    interface IJavaObject
    interface IDisposable
    interface IJavaPeerable
    interface IFuture
继承
FutureTask
属性
实现

注解

可取消的异步计算。 此类提供了一个基本实现 Future,其中包含用于启动和取消计算的方法、查询以查看计算是否完成以及检索计算结果。 仅当计算完成时才能检索结果;如果计算尚未完成,则 get 这些方法将阻止。 计算完成后,将无法重启或取消计算(除非使用 #runAndReset调用计算)。

A FutureTask 可用于包装 CallableRunnable 对象。 由于 FutureTask 实现 Runnable,可以将 a FutureTask 提交到 Executor 执行。

除了用作独立类之外,此类还提供 protected 在创建自定义任务类时可能有用的功能。

在 1.5 中添加。

Java文档java.util.concurrent.FutureTask

本页的某些部分是根据 创建和共享的工作进行的修改,并根据 许可证中所述的条款使用。

构造函数

名称 说明
FutureTask(ICallable)

创建一个 FutureTask 将在运行后执行给定 Callable的 。

FutureTask(IntPtr, JniHandleOwnership)

创建 JNI 对象的托管表示形式时使用的构造函数;由运行时调用。

FutureTask(IRunnable, Object)

创建一个 FutureTask 将在运行后执行给定 Runnable的,并排列 get 将在成功完成时返回给定结果。

属性

名称 说明
Class

返回此 Object的运行时类。

(继承自 Object)
Handle

基础 Android 实例的句柄。

(继承自 Object)
IsCancelled

返回 true 此任务是否已在正常完成之前取消。

IsDone

返回 true 此任务是否已完成。

JniIdentityHashCode

可取消的异步计算。

(继承自 Object)
JniPeerMembers

可取消的异步计算。

PeerReference

可取消的异步计算。

(继承自 Object)
ThresholdClass

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

ThresholdType

此 API 支持 Mono for Android 基础结构,不打算直接从代码使用。

方法

名称 说明
Cancel(Boolean)

尝试取消执行此任务。

Clone()

创建并返回此对象的副本。

(继承自 Object)
Dispose()

可取消的异步计算。

(继承自 Object)
Dispose(Boolean)

可取消的异步计算。

(继承自 Object)
Done()

此任务转换为状态 isDone 时调用的受保护方法(无论是正常还是取消)。

Equals(Object)

指示其他对象是否“等于”此对象。

(继承自 Object)
ExceptionNow()

可取消的异步计算。

Get()

根据需要等待计算完成,然后检索其结果。

Get(Int64, TimeUnit)

如果需要,最多等待给定时间计算完成,然后检索其结果(如果可用)。

GetHashCode()

返回对象的哈希代码值。

(继承自 Object)
JavaFinalize()

当垃圾回收确定不再引用该对象时,由对象上的垃圾回收器调用。

(继承自 Object)
Notify()

唤醒正在等待此对象的监视器的单个线程。

(继承自 Object)
NotifyAll()

唤醒正在等待此对象的监视器的所有线程。

(继承自 Object)
ResultNow()

可取消的异步计算。

Run()

将此未来设置为其计算的结果,除非它已被取消。

RunAndReset()

执行计算而不设置其结果,然后将此未来重置为初始状态,如果计算遇到异常或被取消,则无法执行此操作。

Set(Object)

除非已设置或取消此未来,否则将此未来的结果设置为给定值。

SetException(Throwable)

导致此将来报告 ExecutionException 给定的可引发项作为其原因,除非已设置或已取消此未来。

SetHandle(IntPtr, JniHandleOwnership)

设置 Handle 属性。

(继承自 Object)
State()

可取消的异步计算。

ToArray<T>()

可取消的异步计算。

(继承自 Object)
ToString()

返回对象的字符串表示形式。

(继承自 Object)
UnregisterFromRuntime()

可取消的异步计算。

(继承自 Object)
Wait()

使当前线程等待,直到唤醒它,通常是通过 em 通知/em< 或 >em<interrupted>/em<。><>

(继承自 Object)
Wait(Int64, Int32)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。

(继承自 Object)
Wait(Int64)

使当前线程等待直到唤醒,通常是通过 <em>通知</em> 或 <em interrupted>/em<>,或直到经过一定数量的实时。

(继承自 Object)

显式接口实现

名称 说明
IJavaPeerable.Disposed()

可取消的异步计算。

(继承自 Object)
IJavaPeerable.DisposeUnlessReferenced()

可取消的异步计算。

(继承自 Object)
IJavaPeerable.Finalized()

可取消的异步计算。

(继承自 Object)
IJavaPeerable.JniManagedPeerState

可取消的异步计算。

(继承自 Object)
IJavaPeerable.SetJniIdentityHashCode(Int32)

可取消的异步计算。

(继承自 Object)
IJavaPeerable.SetJniManagedPeerState(JniManagedPeerStates)

可取消的异步计算。

(继承自 Object)
IJavaPeerable.SetPeerReference(JniObjectReference)

可取消的异步计算。

(继承自 Object)

扩展方法

名称 说明
GetAsync(IFuture, Int64, TimeUnit)

可取消的异步计算。

GetAsync(IFuture)

可取消的异步计算。

GetJniTypeName(IJavaPeerable)

获取实例 self类型的 JNI 名称。

JavaAs<TResult>(IJavaPeerable)

尝试强制self键入TResult,检查强制是否在Java端有效。

JavaCast<TResult>(IJavaObject)

执行 Android 运行时检查的类型转换。

JavaCast<TResult>(IJavaObject)

可取消的异步计算。

TryJavaCast<TResult>(IJavaPeerable, TResult)

尝试强制self键入TResult,检查强制是否在Java端有效。

适用于