タグ付けされた質問 「future」



11
未来のリストを待っています
List先物を返すメソッドがあります List<Future<O>> futures = getFutures(); ここで、すべてのフューチャーが正常に処理されるか、フューチャーによって出力が返されるタスクのいずれかが例外をスローするまで待機します。1つのタスクが例外をスローしたとしても、他のフューチャーを待つ意味はありません。 単純なアプローチは wait() { For(Future f : futures) { try { f.get(); } catch(Exception e) { //TODO catch specific exception // this future threw exception , means somone could not do its task return; } } } ただし、ここでの問題は、たとえば、4番目のフューチャーが例外をスローした場合、最初の3つのフューチャーが使用可能になるまで不必要に待機します。 これを解決するには?カウントダウンラッチは何らかの形で役立ちますか?isDonejava docが言っているので、Futureを使用できません。 boolean isDone() Returns true if …

1
先物対約束
私は自分を未来と約束の違いと混同しています。 明らかに、それらは異なる方法やものを持っていますが、実際のユースケースは何ですか? それは...ですか?: 非同期タスクを管理しているときは、futureを使用して「in future」の値を取得します 私が非同期タスクの場合、戻り値の型としてpromiseを使用して、ユーザーが私のpromiseから未来を取得できるようにします
135 c++  c++11  promise  future 

6
Scala:失敗した先物を無視してList [Future]からFuture [List]へ
任意の長さのFutureのリストをFuture of Listに変換する方法を探しています。私はPlayframeworkを使用しているので、結局のところ、私が本当に欲しいのはですが、Future[Result]物事をより簡単にするために、ただ言っておきましょう。Future[List[Int]]これを行う通常の方法は、使用することですFuture.sequence(...)が、ひねりがあります...約10〜20の先物で、これらの先物のうちの1つが失敗することは珍しくありません(彼らは外部のWebサービス要求を行っています)。それらの1つが失敗した場合にすべてを再試行する代わりに、成功したものに到達してそれらを返すことができるようにしたいと思います。 たとえば、次の操作は機能しません import scala.concurrent._ import scala.concurrent.ExecutionContext.Implicits.global import scala.util.Success import scala.util.Failure val listOfFutures = Future.successful(1) :: Future.failed(new Exception("Failure")) :: Future.successful(3) :: Nil val futureOfList = Future.sequence(listOfFutures) futureOfList onComplete { case Success(x) => println("Success!!! " + x) case Failure(ex) => println("Failed !!! " + ex) } scala> Failed !!! java.lang.Exception: …
116 scala  future 

6
Java FutureをCompletableFutureに変換する
Java 8ではCompletableFuture、構成可能なFutureの新しい実装であるが導入されています(thenXxxメソッドの束が含まれています)。これを排他的に使用したいのですが、使用したいライブラリの多くは、合成できないものだけを返しますFutureインスタンスます。 返されたFutureインスタンスをの中にラップして、CompleteableFutureそれを作成できるようにする方法はありますか?
92 java  java-8  future 


8
いくつかの先物を待つ方法は?
いくつかの先物があり、それらのいずれかが失敗するか、すべてが成功するまで待つ必要があるとします。 たとえば:3つの先物がありましょうf1、f2、f3。 場合はf1成功し、f2失敗した私は待たないf3(と返す失敗をクライアントに)。 実行中にf2失敗しf1、f3まだ実行中の場合、私はそれらを待ちません(そして失敗を返します) f1成功してからf2成功した場合、私は待ち続けf3ます。 どのように実装しますか?

6
Javaで完成した未来を作成する方法
Javaで完全な未来を構築するための最良の方法は何ですか?私はCompletedFuture以下で自分自身を実装しましたが、すでに存在するこのようなものを望んでいました。 public class CompletedFuture<T> implements Future<T> { private final T result; public CompletedFuture(final T result) { this.result = result; } @Override public boolean cancel(final boolean b) { return false; } @Override public boolean isCancelled() { return false; } @Override public boolean isDone() { return true; } @Override public T get() …
82 java  future 

3
std :: futureのステータスを取得します
std::futureが終了したかどうかを確認することはできますか?私が知る限り、それを行う唯一の方法wait_forは、ゼロの期間で電話をかけ、ステータスがそうであるかどうかを確認することreadyですが、より良い方法はありますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.