|
@@ -52,9 +52,12 @@ public class ScoreService implements ApplicationContextAware {
|
|
|
List<Future<List<Score>>> futures = new ArrayList<>();
|
|
|
for (final ScoreStrategy strategy : strategies) {
|
|
|
Future<List<Score>> future = pool.submit(() -> {
|
|
|
- List<Score> result = strategy.score(param);
|
|
|
- cdl.countDown();
|
|
|
- return result;
|
|
|
+ try {
|
|
|
+ List<Score> result = strategy.score(param);
|
|
|
+ return result;
|
|
|
+ } finally {
|
|
|
+ cdl.countDown();
|
|
|
+ }
|
|
|
});
|
|
|
futures.add(future);
|
|
|
}
|