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

相关推荐
daidaidaiyu10 小时前
Spring IOC 源码学习一 基本姿势
java·spring
LSL666_11 小时前
SpringBoot自动配置类
java·spring boot·后端·自动配置类
q***783711 小时前
Spring Boot 3.X:Unable to connect to Redis错误记录
spring boot·redis·后端
甜鲸鱼11 小时前
Java与MySQL中的枚举(Enum)
java·mysql
xxxxxxllllllshi11 小时前
【LeetCode Hot100----14-贪心算法(01-05),包含多种方法,详细思路与代码,让你一篇文章看懂所有!】
java·数据结构·算法·leetcode·贪心算法
t***265911 小时前
SpringBoot + vue 管理系统
vue.js·spring boot·后端
pengzhuofan11 小时前
Sentinel 服务保护
java·微服务·sentinel
6***379411 小时前
Java安全
java·开发语言·安全
豐儀麟阁贵12 小时前
8.1 异常概述
java·开发语言
qq_124987075312 小时前
基于springboot的疾病预防系统的设计与实现(源码+论文+部署+安装)
java·spring boot·后端·毕业设计