JDK25中的StructuredTaskScope

前言

在稳定版JDK25中,还是第五次预览了结构化并发(JEP 505)StructuredTaskScope,但是在JDK25中,有着些许调整

结构化并发

JDK25中,StructuredTaskScope新增了StructuredTaskScope.open()方法,用于实例化StructuredTaskScope

csharp 复制代码
public class StructuredExample {
    static String fetchUser() {
        try {
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            Thread.currentThread().interrupt();
        }
        return "hello";
    }

    static String fetchOrder() {
        try {
            Thread.sleep(1500);
        } catch (InterruptedException e) {
            Thread.currentThread().interrupt();
        }
        return "world";
    }

    public static void main(String[] args) throws Exception {
        try (var scope = StructuredTaskScope.<String>open()) {
            var userTask = scope.fork(() -> fetchUser());
            var orderTask = scope.fork(() -> fetchOrder());

            scope.join();

            System.out.println(userTask.get() + " - " + orderTask.get());
        }
    }
}

输出结果为

总结

StructuredTaskScopeJDK25中,目前还是预览状态,但是要先使用该语法,可以尝试,结构化并发帮助管理逻辑关联的多个并发任务,可以提高程序的可靠性

相关推荐
YDS82914 小时前
大营销平台 —— 抽奖前置规则过滤
java·spring boot·ddd
Justin3go14 小时前
丢掉沉重的记忆:Codex、Claude Code 与 OpenCode 的上下文压缩术
前端·后端·架构
仍然.14 小时前
多线程---CAS,JUC组件和线程安全的集合类
java·开发语言
不懂的浪漫14 小时前
mqtt-plus 架构解析(五):错误处理与 ErrorAction 聚合策略
java·spring boot·后端·物联网·mqtt·架构
呼啦啦56114 小时前
C++vector
java·c++·缓存
花千树-01014 小时前
MCP + Function Calling:让模型自主驱动工具链完成多步推理
java·agent·react·mcp·toolcall·harness·j-langchain
Benszen14 小时前
Linux容器:轻量级虚拟化革命
java·linux·运维
凸头14 小时前
Lombok 包底层浅析
java
不懂的浪漫14 小时前
mqtt-plus 架构解析(三):Payload 序列化与反序列化,为什么要拆成两条链
java·spring boot·物联网·mqtt·架构
卷福同学14 小时前
去掉手机APP开屏广告,李跳跳2.2下载使用
java·后端·算法