scope = StructuredTaskScope.open()) { // 1つ目のサブタスクを実行 Subtask<String> user = scope.fork(() -> findUser()); // 2つ目のサブタスクを実行 Subtask<Integer> order = scope.fork(() -> fetchOrder()); // 全サブタスク完了まで待機 scope.join(); // 両方成功 → 結果を合成 return new Response(user.get(), order.get()); } // スコープ終了時、全サブタスクの終了が保証される } 処理フロー: open() → fork() → join() → 結果取得 → close() 6