Browse Source

Update Service.java (#3977)

Redkale 7 years ago
parent
commit
b37ff0e6ff

+ 4 - 5
frameworks/Java/redkale/src/main/java/org/redkalex/benchmark/Service.java

@@ -58,17 +58,16 @@ public class Service extends AbstractService {
     public CompletableFuture<World[]> updateWorld(@RestParam(name = "queries") int count) {
         count = Math.min(500, Math.max(1, count));
         final World[] rs = new World[count];
-        final CompletableFuture<World>[] futures = new CompletableFuture[count];
+        final CompletableFuture<Integer>[] futures = new CompletableFuture[count];
         for (int i = 0; i < count; i++) {
             final int index = i;
-            futures[index] = source.findAsync(World.class, randomId()).whenComplete((w, t) -> {
+            futures[index] = source.findAsync(World.class, randomId()).thenCompose(w -> {
                 rs[index] = w;
                 rs[index].setRandomNumber(randomId());
+                return source.updateAsync(w);
             });
         }
-        return CompletableFuture.allOf(futures).thenCompose((r) -> { 
-            return source.updateAsync(rs).thenApply((v) -> rs);
-        });
+        return CompletableFuture.allOf(futures).thenApply((v) -> rs);
     }
 
     @RestMapping(name = "fortunes")