3

MyFutureTask extends FutureTask<Void>メソッドでコードを実行するカスタムクラスがありdone()ます。

私はそれに呼び出す ExecutorService を使用submit(new MyFutureTask())します。

Future<?>これで、submit を呼び出した後に返される への参照を保持できますが、cancel を呼び出すと、isCancelled()メソッドは決して true を返しません。

Future<?>返されるオブジェクトを無視して、代わりにそれを操作しMyFutureTaskて呼び出す必要がありcancel(true)ますか?

Future<?>では、オブジェクトの使用は何ですか?

編集: Java の Future と FutureTask の違いは何ですか? このスレッドから私は違いを理解しています。

デフォルトのキャンセル動作に加えて、進行中のネットワーク呼び出しを停止したいので、FutureTask を使用するルートは正しいと思います。誰かが確認できますか?

4

2 に答える 2

0

を使用しないでください。すでにFutureExecutor.submitあるため、代わりに使用してください。submit を呼び出すと、FutureTask を別のFutureTask に不必要にラップしているだけです。Executor.execute

于 2012-02-13T19:36:04.533 に答える