futuretaskの一般的な方法は何ですか。
FutureTaskの一般的なメソッドには、以下があります:
- get()メソッド:タスクの結果を取得し、タスクが完了していない場合は結果が返るまでブロックされる。
- 指定された時間(timeoutとunitのパラメータによって決定される)まで、結果を取得します。タスクが完了していない場合は、待機し、タスクが完了すると結果を返します。それ以外の場合は、TimeoutException例外がスローされます。
- cancel(boolean mayInterruptIfRunning):タスクの実行をキャンセルしようとします。タスクが既に完了しているかキャンセルされている場合、このメソッドはfalseを返します。タスクがまだ実行されていない場合、タスクの実行をキャンセルしようとしてtrueを返します。タスクが実行中で、mayInterruptIfRunningパラメーターがtrueの場合、タスクの実行を中断しtrueを返します。タスクが実行中で、mayInterruptIfRunningパラメーターがfalseの場合、タスクの実行をキャンセルできずfalseを返します。
- isCancelled()メソッド:タスクがキャンセルされているかどうかを判断します。
- isDone()メソッドは、タスクが完了しているかどうかを判断します。
- run()メソッド:タスクを実行します。このメソッドは、タスクが実行される前に呼び出されます。
- runAndReset():タスクを実行して状態をリセットします。このメソッドは、タスクが実行されていない状態で呼び出され、実行が完了するとタスクの状態がリセットされ、タスクを再度実行できるようにします。
- 結果を設定し、タスクを完了済みにマークします。
- setExceptionメソッドは、実行中に発生した例外を設定し、タスクが完了したことをマークします。
- isPeriodic()メソッドは、タスクが周期的なタスクかどうかを判断します。このメソッドは、FutureTaskでは具体的な実装がありませんが、ScheduledFutureTaskでは実装されています。