AsyncOperation<T> クラス
- java.
lang. Object - java.
util. concurrent. Future<T> - com.
microsoft. connecteddevices. AsyncOperation<T>
- com.
- java.
型パラメーター
- T
public class AsyncOperation
T 型または考えられる例外の将来の結果を持つ操作。 このクラスは、Android API レベル 24 CompletableFuture クラスの少し簡略化されたバージョンです
標準の Future インターフェイスを実装し、基本的な継続機能も提供します。 このクラスの使用方法の詳細については、CompletableFuture を参照してください。
CompletableFuture と AsyncOperation の重要な違いは次のとおりです。 AsyncOperation の既定の非同期 Executor は Executors.newCachedThreadPool() ですが、CompletableFuture では ForkJoinPool.commonPool() が使用されます。 2. AsyncOperation には obtrudeException メソッドと obtrudeValue メソッドがありません。
コンストラクターの概要
| コンストラクター | 説明 |
|---|---|
| AsyncOperation() |
新しい AsyncOperation を作成します。 |
メソッドの概要
| 修飾子と型 | メソッドと説明 |
|---|---|
|
<U> Async |
_handleAsyncInternal(AsyncOperation.ResultBiFunction<? super T, ? super Throwable, ? extends U> action, Executor executor)
ハンドル 3 つの関数 (handle(action)、handleAsync(action)、handleAsync(action,Executor)) は、他の関数が構築される最も基本的な継続関数です。 この操作が正常または例外的に完了すると、渡されたアクションが実行され、継続元の結果と継続元の例外の両方が観察されます。 |
|
Async |
_whenCompleteAsyncInternal(AsyncOperation.ResultBiConsumer<? super T, ? super Throwable> action, Executor executor)
関数の whenComplete 3 番目 (whenComplete(action)、whenCompleteAsync(action)、whenCompleteAsync(action,Executor)) は、ハンドル関数に似ています。 この操作が正常または例外的に完了すると、渡されたアクションが実行され、継続元の結果と継続元の例外の両方が観察されます。 ハンドルとは異なり、アクションの結果は依存する操作には反映されません。彼らは、渡されたアクションの代わりに、このステージの例外/結果を観察します |
|
Async |
acceptEither( @NonNull AsyncOperation<? extends T> other, @NonNull AsyncOperation.ResultConsumer<? super T> action)
Accept 3 つの関数は、この操作または渡された操作のいずれかが正常に完了したときに、渡された ResultConsumer を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
Async |
acceptEitherAsync( @NonNull AsyncOperation<? extends T> other, @NonNull AsyncOperation.ResultConsumer<? super T> action)
Accept 3 つの関数は、この操作または渡された操作のいずれかが正常に完了したときに、渡された ResultConsumer を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
Async |
acceptEitherAsync( @NonNull AsyncOperation<? extends T> other, AsyncOperation.ResultConsumer<? super T> action, @NonNull Executor executor)
Accept 3 つの関数は、この操作または渡された操作のいずれかが正常に完了したときに、渡された ResultConsumer を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
Async |
allOf(@NonNull AsyncOperation<?>... operations)
渡されたすべての操作が完了したときに完了する操作を作成します。 |
|
Async |
anyOf(@NonNull AsyncOperation<?>... operations)
渡された操作のいずれかが完了したときに完了する操作を作成します。 |
|
<U> Async |
applyToEither( @NonNull AsyncOperation<? extends T> other, @NonNull AsyncOperation.ResultFunction<? super T, U> action)
この操作または渡された操作のいずれかが正常に完了すると、関数の applyToEither 3 は、渡された ResultFunction を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
<U> Async |
applyToEitherAsync( @NonNull AsyncOperation<? extends T> other, @NonNull AsyncOperation.ResultFunction<? super T, U> action)
この操作または渡された操作のいずれかが正常に完了すると、関数の applyToEither 3 は、渡された ResultFunction を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
<U> Async |
applyToEitherAsync(@NonNull AsyncOperation<? extends T> other, @NonNull AsyncOperation.ResultFunction<? super T, U> action, @NonNull Executor executor)
この操作または渡された操作のいずれかが正常に完了すると、関数の applyToEither 3 は、渡された ResultFunction を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。 |
| boolean |
cancel(boolean mayInterruptIfRunning)
将来のキャンセルを試み、結果の待機を停止します。 AsyncOperation を取り消すと、get() を介して将来を待機しているスレッドが CancellationException をすぐに受信します。 操作の実行は中断されませんが、取り消された呼び出しによる最終的な結果は無視されます。 |
| final void |
complete(T value)
指定された値で操作を完了します。 |
|
static<U> Async |
completedFuture(U value)
指定された値で既に完了している操作を作成します。 |
| final void |
completeExceptionally(@NonNull Throwable ex)
将来の値が取得されたときにスローされる例外を設定し、将来の完了をマークします。 |
|
Async |
exceptionally(@NonNull AsyncOperation.ResultFunction<Throwable, ? extends T> action)
この操作が例外的に完了した場合にのみ実行される継続をアタッチできるようにします。 例外の *async* バリアントがないため、この操作を完了したスレッドまたは呼び出し元スレッド (既に完了した操作の場合) をブロックしている可能性があるため、アクションの実行時間が長くないように注意してください。 |
| T |
get()
将来の値を取得し、将来が完了するまで必要に応じて待機します。 |
| T |
get(long timeout, @NonNull TimeUnit unit)
将来の値の取得を試み、必要に応じて、将来が完了するまで、またはタイムアウトになるまで待機します。 |
| final T |
getNow(T valueIfAbsent)
操作がまだ完了していない場合は、渡された値を直ちに返す操作の値を取得します。 |
| int |
getNumberOfDependents()
この操作に依存する操作の推定数を取得します。 これは、同期/スケジュール設定のために使用されるものではありません。 |
|
<U> Async |
handle(@NonNull AsyncOperation.ResultBiFunction<? super T, ? super Throwable, ? extends U> action)
ハンドル 3 つの関数 (handle(action)、handleAsync(action)、handleAsync(action,Executor)) は、他の関数が構築される最も基本的な継続関数です。 この操作が正常または例外的に完了すると、渡されたアクションが実行され、継続元の結果と継続元の例外の両方が観察されます。 |
|
<U> Async |
handleAsync(@NonNull AsyncOperation.ResultBiFunction<? super T, ? super Throwable, ? extends U> action)
ハンドル 3 つの関数 (handle(action)、handleAsync(action)、handleAsync(action,Executor)) は、他の関数が構築される最も基本的な継続関数です。 この操作が正常または例外的に完了すると、渡されたアクションが実行され、継続元の結果と継続元の例外の両方が観察されます。 |
|
<U> Async |
handleAsync( @NonNull AsyncOperation.ResultBiFunction<? super T, ? super Throwable, ? extends U> action, @NonNull Executor executor)
ハンドル 3 つの関数 (handle(action)、handleAsync(action)、handleAsync(action,Executor)) は、他の関数が構築される最も基本的な継続関数です。 この操作が正常または例外的に完了すると、渡されたアクションが実行され、継続元の結果と継続元の例外の両方が観察されます。 |
| boolean |
isCancelled()
将来が正常に取り消されたかどうかを確認します。 |
| boolean |
isCompletedExceptionally()
操作が例外的な方法 (取り消しまたは completeExceptionally) で完了したかどうかを確認します |
| boolean |
isDone()
将来が完了したかどうかを確認します。 将来は、結果が設定されるか、例外が設定されたときに行われます。 |
| T |
join()
将来の値を取得し、将来が完了するまで必要に応じて待機します。 get() 結合とは異なり、この操作を完了するプロセスで例外が発生した場合、CompletionException がスローされます |
|
Async |
runAfterBoth(@NonNull AsyncOperation<?> other, @NonNull Runnable action)
関数の runAfterBoth トリオは、この操作が正常に完了すると、Runnable で渡された操作を実行します。 いずれかの操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
Async |
runAfterBothAsync(@NonNull AsyncOperation<?> other, @NonNull Runnable action)
関数の runAfterBoth トリオは、この操作が正常に完了すると、Runnable で渡された操作を実行します。 いずれかの操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
Async |
runAfterBothAsync(@NonNull AsyncOperation<?> other, @NonNull Runnable action, @NonNull Executor executor)
関数の runAfterBoth トリオは、この操作が正常に完了すると、Runnable で渡された操作を実行します。 いずれかの操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
Async |
runAfterEither(@NonNull AsyncOperation<?> other, @NonNull Runnable action)
runAfter 関数の 3 つの関数は、この操作または渡された操作のいずれかが正常に完了したときに、Runnable で渡された処理を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
Async |
runAfterEitherAsync(@NonNull AsyncOperation<?> other, @NonNull Runnable action)
runAfter 関数の 3 つの関数は、この操作または渡された操作のいずれかが正常に完了したときに、Runnable で渡された処理を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
Async |
runAfterEitherAsync( @NonNull AsyncOperation<?> other, @NonNull Runnable action, @NonNull Executor executor)
runAfter 関数の 3 つの関数は、この操作または渡された操作のいずれかが正常に完了したときに、Runnable で渡された処理を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
Async |
runAsync(@NonNull Runnable runnable)
既定の Executor で Runnable で渡された操作を実行する操作を作成します。 |
|
Async |
runAsync(@NonNull Runnable runnable, @NonNull Executor executor)
渡された Executor で Runnable で渡された操作を実行する操作を作成します。 |
|
static<U> Async |
supplyAsync(@NonNull AsyncOperation.Supplier<U> supplier)
既定の Executor を使用してサプライヤーから値を取得する操作を作成します。 |
|
static<U> Async |
supplyAsync(@NonNull AsyncOperation.Supplier<U> supplier, @NonNull Executor executor)
渡された Executor を使用してサプライヤーから値を取得する操作を作成します。 |
|
Async |
thenAccept(@NonNull ResultConsumer<? super T> action)
この操作が正常に完了すると、関数 (thenAccept(action)、thenAcceptAsync(action)、ThenAcceptAsync(action,Executor)) の thenAccept 3 番目の関数によって、渡された ResultConsumer が実行されます。 |
|
Async |
thenAcceptAsync(@NonNull ResultConsumer<? super T> action)
この操作が正常に完了すると、関数 (thenAccept(action)、thenAcceptAsync(action)、ThenAcceptAsync(action,Executor)) の thenAccept 3 番目の関数によって、渡された ResultConsumer が実行されます。 |
|
Async |
thenAcceptAsync(@NonNull ResultConsumer<? super T> action, @NonNull Executor executor)
この操作が正常に完了すると、関数 (thenAccept(action)、thenAcceptAsync(action)、ThenAcceptAsync(action,Executor)) の thenAccept 3 番目の関数によって、渡された ResultConsumer が実行されます。 |
|
<U> Async |
thenAcceptBoth( @NonNull AsyncOperation<? extends U> other, @NonNull AsyncOperation.ResultBiConsumer<? super T, ? super U> action)
thenAcceptBoth 関数の 3 番目の 3 つの関数は、この操作が正常に完了すると、ResultConsumer で渡された操作を実行します。 いずれかの操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
<U> Async |
thenAcceptBothAsync( @NonNull AsyncOperation<? extends U> other, @NonNull AsyncOperation.ResultBiConsumer<? super T, ? super U> action)
thenAcceptBoth 関数の 3 番目の 3 つの関数は、この操作が正常に完了すると、ResultConsumer で渡された操作を実行します。 いずれかの操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
<U> Async |
thenAcceptBothAsync(@NonNull AsyncOperation<? extends U> other, @NonNull AsyncOperation.ResultBiConsumer<? super T, ? super U> action, @NonNull Executor executor)
thenAcceptBoth 関数の 3 番目の 3 つの関数は、この操作が正常に完了すると、ResultConsumer で渡された操作を実行します。 いずれかの操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
<U> Async |
thenApply(@NonNull ResultFunction<? super T, ? extends U> action)
thenApply 3 つの関数 (thenApplyAsync(action)、thenApplyAsync(action)、thenApplyAsync(action,Executor)) は、この操作が正常に完了したときに ResultFunction で渡された関数を実行します。 |
|
<U> Async |
thenApplyAsync(@NonNull ResultFunction<? super T, ? extends U> action)
thenApply 3 つの関数 (thenApplyAsync(action)、thenApplyAsync(action)、thenApplyAsync(action,Executor)) は、この操作が正常に完了したときに ResultFunction で渡された関数を実行します。 |
|
<U> Async |
thenApplyAsync(@NonNull ResultFunction<? super T, ? extends U> action, @NonNull Executor executor)
thenApply 3 つの関数 (thenApplyAsync(action)、thenApplyAsync(action)、thenApplyAsync(action,Executor)) は、この操作が正常に完了したときに ResultFunction で渡された関数を実行します。 |
|
<U, V> Async |
thenCombine( @NonNull AsyncOperation<? extends U> other, @NonNull AsyncOperation.ResultBiFunction<? super T, ? super U, ? extends V> action)
thenCombine 関数の 3 つの関数は、この操作が正常に完了すると、渡された ResultFunction を実行します。 いずれかの操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
<U, V> Async |
thenCombineAsync( @NonNull AsyncOperation<? extends U> other, @NonNull AsyncOperation.ResultBiFunction<? super T, ? super U, ? extends V> action)
thenCombine 関数の 3 つの関数は、この操作が正常に完了すると、渡された ResultFunction を実行します。 いずれかの操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
<U, V> Async |
thenCombineAsync(@NonNull AsyncOperation<? extends U> other, @NonNull AsyncOperation.ResultBiFunction<? super T, ? super U, ? extends V> action, @NonNull Executor executor)
thenCombine 関数の 3 つの関数は、この操作が正常に完了すると、渡された ResultFunction を実行します。 いずれかの操作が例外的に完了した場合、返される操作も例外的に完了します。 |
|
<U> Async |
thenCompose(@NonNull AsyncOperation.ResultFunction<? super T, ? extends AsyncOperation<U>> action)
この操作が正常に完了すると、関数の thenCompose 3 番目の関数は、渡された ResultFunction を実行します。 ResultFunction は AsyncOperation<T> を返し、この呼び出しからの戻り操作は AsyncOperation<AsyncOperation>T< とは対照的に、AsyncOperation<T>> を返します。 |
|
<U> Async |
thenComposeAsync(@NonNull AsyncOperation.ResultFunction<? super T, ? extends AsyncOperation<U>> action)
この操作が正常に完了すると、関数の thenCompose 3 番目の関数は、渡された ResultFunction を実行します。 ResultFunction は AsyncOperation<T> を返し、この呼び出しからの戻り操作は AsyncOperation<AsyncOperation>T< とは対照的に、AsyncOperation<T>> を返します。 |
|
<U> Async |
thenComposeAsync(AsyncOperation.ResultFunction<? super T, ? extends AsyncOperation<U>> action, Executor executor)
この操作が正常に完了すると、関数の thenCompose 3 番目の関数は、渡された ResultFunction を実行します。 ResultFunction は AsyncOperation<T> を返し、この呼び出しからの戻り操作は AsyncOperation<AsyncOperation>T< とは対照的に、AsyncOperation<T>> を返します。 |
|
Async |
thenRun(@NonNull Runnable action)
thenRun 3 つの関数 (thenRun(action)、thenRunAsync(action)、およびRunAsync(action,Executor)) は、この操作が正常に完了したときに Runnable で渡された関数を実行します。 |
|
Async |
thenRunAsync(@NonNull Runnable action)
thenRun 3 つの関数 (thenRun(action)、thenRunAsync(action)、およびRunAsync(action,Executor)) は、この操作が正常に完了したときに Runnable で渡された関数を実行します。 |
|
Async |
thenRunAsync(@NonNull Runnable action, @NonNull Executor executor)
thenRun 3 つの関数 (thenRun(action)、thenRunAsync(action)、およびRunAsync(action,Executor)) は、この操作が正常に完了したときに Runnable で渡された関数を実行します。 |
|
Async |
whenComplete(@NonNull AsyncOperation.ResultBiConsumer<? super T, ? super Throwable> action)
関数の whenComplete 3 番目 (whenComplete(action)、whenCompleteAsync(action)、whenCompleteAsync(action,Executor)) は、ハンドル関数に似ています。 この操作が正常または例外的に完了すると、渡されたアクションが実行され、継続元の結果と継続元の例外の両方が観察されます。 ハンドルとは異なり、アクションの結果は依存する操作には反映されません。彼らは、渡されたアクションの代わりに、このステージの例外/結果を観察します |
|
Async |
whenCompleteAsync(@NonNull AsyncOperation.ResultBiConsumer<? super T, ? super Throwable> action)
関数の whenComplete 3 番目 (whenComplete(action)、whenCompleteAsync(action)、whenCompleteAsync(action,Executor)) は、ハンドル関数に似ています。 この操作が正常または例外的に完了すると、渡されたアクションが実行され、継続元の結果と継続元の例外の両方が観察されます。 ハンドルとは異なり、アクションの結果は依存する操作には反映されません。彼らは、渡されたアクションの代わりに、このステージの例外/結果を観察します |
|
Async |
whenCompleteAsync( @NonNull AsyncOperation.ResultBiConsumer<? super T, ? super Throwable> action, @NonNull Executor executor)
関数の whenComplete 3 番目 (whenComplete(action)、whenCompleteAsync(action)、whenCompleteAsync(action,Executor)) は、ハンドル関数に似ています。 この操作が正常または例外的に完了すると、渡されたアクションが実行され、継続元の結果と継続元の例外の両方が観察されます。 ハンドルとは異なり、アクションの結果は依存する操作には反映されません。彼らは、渡されたアクションの代わりに、このステージの例外/結果を観察します |
コンストラクターの詳細
AsyncOperation
public AsyncOperation()
新しい AsyncOperation を作成します。
メソッドの詳細
_handleAsyncInternal
protected AsyncOperation _handleAsyncInternal(AsyncOperation.ResultBiFunction action, Executor executor)
ハンドル 3 つの関数 (handle(action)、handleAsync(action)、handleAsync(action,Executor)) は、他の関数が構築される最も基本的な継続関数です。 この操作が正常または例外的に完了すると、渡されたアクションが実行され、継続元の結果と継続元の例外の両方が観察されます。
パラメーター:
戻り値:
_whenCompleteAsyncInternal
protected AsyncOperation
関数の whenComplete 3 番目 (whenComplete(action)、whenCompleteAsync(action)、whenCompleteAsync(action,Executor)) は、ハンドル関数に似ています。 この操作が正常または例外的に完了すると、渡されたアクションが実行され、継続元の結果と継続元の例外の両方が観察されます。 ハンドルとは異なり、アクションの結果は依存する操作には反映されません。彼らは、渡されたアクションの代わりに、このステージの例外/結果を観察します
パラメーター:
戻り値:
acceptEither
public AsyncOperation
Accept 3 つの関数は、この操作または渡された操作のいずれかが正常に完了したときに、渡された ResultConsumer を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。
パラメーター:
戻り値:
acceptEitherAsync
public AsyncOperation
Accept 3 つの関数は、この操作または渡された操作のいずれかが正常に完了したときに、渡された ResultConsumer を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。
パラメーター:
戻り値:
acceptEitherAsync
public AsyncOperation
Accept 3 つの関数は、この操作または渡された操作のいずれかが正常に完了したときに、渡された ResultConsumer を実行します。 完了した操作が例外的に完了した場合、返される操作も例外的に完了します。
パラメーター:
戻り値:
allOf
public static AsyncOperation
渡されたすべての操作が完了したときに完了する操作を作成します。
パラメーター:
戻り値:
anyOf
public static AsyncOperation