問題タブ [future]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
9 に答える
113846 参照

jquery - jQuery UI Datepicker で将来の日付を無効にする

今日から未来の日付を無効にすることは可能ですか?

今日が 2010 年 10 月 23 日であるとすると、2010 年 10 月 24 日以降は無効になります。

申し訳ありませんが、私は jQuery と JavaScript の初心者です。

0 投票する
2 に答える
2754 参照

java - Java Futureマルチスレッドはどのように結果を返しますか?

私はまだJavaでFutureとCallableを使用することについて学んでいます。この質問に遭遇します:

クラスがあるとしましょう:

そしてここに主な方法があります:

私がやろうとしているのは、各リクエストIDが個別の検索プロセスであるため、リクエストの一部を分割して個別のスレッドで実行することです。そのため、結果をfutureオブジェクトに格納することにより、Javaプーリングを利用しようとしています。

私が混乱しているのは、この場合、将来はどのように機能するのかということです。スレッドが完了するたびに、結果が保持されますか?そして、すべてのプロセスが終了した後、将来のオブジェクトをループして結果を正しく取得できますか?

また、プロセスが順番に(1、2、3、4など)実行されるという保証はありませんよね?その場合、元の各リクエストを将来の結果に関連付けたい場合の最善の戦略は何ですか?

お知らせ下さい。

ありがとう

0 投票する
4 に答える
18924 参照

java - Future.get() は常に InterruptedException で中断されます

Java の Future.get() に奇妙な問題があります。常に InterruptedException で返されますが、奇妙なことに、例外の原因が null であるため、誰が私を中断したのかわかりません..

get() を呼び出す前にチェックし、Future が実行しなければならない仕事は既に完了しているため、さらに悪化します。

以下の出力を担当するコードを次に示します。f は Futureであり、 callable は Agent が実際には関連しない HashMap を返します。印刷行が多すぎる場合は申し訳ありませんが、できるだけ多くの情報を提供しようとしています。callable からの call メソッドは、今のところ単純なSystem.out.println("Hola soy agente")もので、後でわかるように出力されます。つまり、callable が例外を引き起こさなかったことを意味します。

コードは次のとおりです。

そして出力

呼び出し可能オブジェクトをスレッドプールに送信する場所を確認したい場合は、これがそのコードになります

その後、この Set を次のように反復処理します

0 投票する
6 に答える
14937 参照

clojure - Clojure の先物と約束はどう違うのですか?

future と promise はどちらも値を計算するまでブロックしますが、両者の違いは何ですか?

0 投票する
1 に答える
1339 参照

scala - Future Actorに関連付けられたオブジェクトをどのように取得しますか?

未来のスポーンから返されるオブジェクトにアクセスできるようにしたいと思います

このコードの1回の実行からの出力は次のとおりです。

future()。getClass()を試しましたが、出力は

私がアクセスできるように探しているのは、obj1オブジェクトです。

ありがとう

ブルース

0 投票する
2 に答える
1706 参照

java - Callableが特定の結果を返したらExecutorを停止します

Executorに送信された場合でも、ExecutorがFutureオブジェクトを実行しないようにしたいのですが。エグゼキュータを介して複数のスレッドを実行することはすべて正常に機能しますが、Callableのいずれかがブール値のTRUEを返したときにエグゼキュータを停止する必要があります。現在実行中のFutureが完了したことは問題ありませんが、残りを続行するのは時間の無駄です。

MathCalculationがCallableインターフェイスを実装し、そのcall()メソッドがブール値を返す場合。

セットが非常に大きくなり、マルチスレッドの状況のた​​めに明らかに機能しないため、各反復でcalculationSetを検索することはオプションではありません。これを達成する方法はありますか?

0 投票する
1 に答える
1312 参照

python - それは私だけですか、それともWindowsの新しいPython先物モジュールに深刻な問題がありますか

私はWindowsXPを使用していますが、新しいPython3.2futuresモジュールに問題があります。仕事ができないようですProcessPoolExecutor。セッションの例:

ここで何かがおかしいようです。

0 投票する
3 に答える
6790 参照

java - CompletionServiceを使用して時間がかかりすぎるタスクをキャンセルするにはどうすればよいですか?

2スレッドのFixedThreadPoolExecutorServiceにラップされたCompletionServiceを使用して、いくつかのFutureタスクを送信し、送信されたタスクの数に等しいループを設定してセットアップし、completionservice.take()を使用してすべてが完了するか失敗するのを待ちます。問題は非常にまれに終了しないことがあるので(理由はわかりません)、take()メソッドをpoll(300、Timeout.SECONDS)に変更しました。これは、1つのタスクが完了するまでに5分以上かかる場合のアイデアです。ポーリングは失敗し、最終的にはループから抜け出します。すべての先物を調べて、future.cancel(true)を呼び出して、問題のあるタスクを強制的にキャンセルできます。

しかし、コードを実行してハングすると、ポーリングが5分ごとに1回継続して失敗し、それ以上タスクが実行されないことがわかります。そのため、2人のワーカーが何らかの方法でデッドロックし、終了せず、追加のタスクの開始を許可しないと想定します。タイムアウトは5分であり、実行するタスクがまだ1000あるため、ループを解除するのにかかる時間が長すぎたため、ジョブをキャンセルしました。

ですから、私がやりたいのは、5分以内に完了しなかった場合に現在のタスクを中断/強制的にキャンセルすることですが、それを行う方法がわかりません。

このコードサンプルは、Imが話していることの簡略版を示しています

出力

0 投票する
1 に答える
1271 参照

sql - NHibernate Future Object Graph 多くのクエリ

Future を次のように使用して呼び出されるマルチレベル オブジェクト グラフがあるとします。

var Dad = dads.ToList() を呼び出すと、バッチがネットワークを経由してプロファイラーに表示されます。

問題は、コレクションを列挙するときに、データベースに 1 回限りのクエリを送信していることです。

例えば。

SQL クエリを送信し、データベースにヒットして各子供を取得します。オブジェクト グラフが読み込まれないのはなぜですか? またはこれは予想される動作ですか?

0 投票する
1 に答える
1002 参照

nhibernate - 先物を持つNHibernateの親、子コレクション

私はこのセットアップを持っています:子のコレクションを持つ親。

HQL:

("親から").Future();

("子から").Future();

これにより、古典的な N+1 問題が得られます。2 つの SQL ステートメントが 1 回の往復でサーバーに送信されるため、すべてのデータが第 1 レベルのキャッシュに存在するため、NH がすべての子に対して SQL をまだ存在させるのはなぜですか。

バージョン 3.1.0.400