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

相关推荐
sunwenjian88619 小时前
Java进阶——IO 流
java·开发语言·python
sinat_2554878119 小时前
读者、作家 Java集合学习笔记
java·笔记·学习
墨香幽梦客19 小时前
API集成技术规范:RESTful与GraphQL在企业系统对接中的应用对比
后端·restful·graphql
皮皮林55119 小时前
如何画出一张优秀的架构图?(老鸟必备)
java
百锦再19 小时前
Java 并发编程进阶,从线程池、锁、AQS 到并发容器与性能调优全解析
java·开发语言·jvm·spring·kafka·tomcat·maven
森林猿20 小时前
java-modbus-读取-modbus4j
java·网络·python
tobias.b20 小时前
计算机基础知识-数据结构
java·数据结构·考研
reembarkation20 小时前
光标在a-select,鼠标已经移出,下拉框跟随页面滚动
java·数据库·sql
愣头不青20 小时前
617.合并二叉树
java·算法
刀法如飞20 小时前
AI编程时代,为什么35岁以上程序员会更吃香?
人工智能·后端·ai编程