私はかなり頻繁に callable を使用していますが、私を苛立たせる質問に出くわしました:
関数 foo() を実行するには、最初にいくつかのチェックを行う必要があるとしましょう。
1. チェックを Callable の一部として挿入します。
class A implements Callable<Long> {
...
public Long call() {
check1();
check2();
return (run());
}
- または、このすべてのロジックを別のクラス (ALogic) に挿入し、Callable をエグゼキュータの単なるシェルとして使用しますか?
class A implements Callable {
...
public Long call() {
ALogic aLogic = new ALogic();
return (aLogic.run());
}
長所と短所は何だと思いますか?あなたは通常、何を好みますか?