OpenJDK 目前主要发展方向

Loom:得赶紧解决 synchronized pin 线程的问题(据说 Java 23 会解决,现在有预览版)。各个 Java 库需要改造原来使用 ThreadLocal 的方式:如果是为了穿参数,则可以使用 ScopedLocal;如果是对象池避免多线程访问,则需要整体改写为线程安全的方式。

ZGC:分代 ZGC 的 bug 需要多修修。

Panama:一方面是 MemorySegment 的稳定与各个库的改写。一方面是 Vector API 感觉必须等 Valhalla 值对象,以及 Babylon 的 GPU 兼容。而且,说不定,Babylon 的直接解析字节码通过 CUDA 转换 SIMD 使用 GPU 加速会干掉 Vector API。最后一方面是外部函数调用,这个才是真正的 AI 方向,这个稳定了,就会有 Num4j,Sci4j,Pandas4j(这些其实底层都是 C/C++ 上层封装 python api,以后可以在上层换成 Java API 了)

Leyden:一方面是继续压缩对象头的大小,一方面是通过 JVM 冷凝器加速启动时间。类似的 CRaC 的方向已经投入生产,但是需要改造很多东西。希望 Leyden 可以减少改造。

Valhalla:值对象肯定很香,但是估计和虚拟线程一样,出来的话先得改一堆 Bug。

Babylon:期望和虚拟线程一样,无感知将代码转换为 SIMD 的执行。

相关推荐
冰暮流星9 分钟前
javascript的switch语句介绍
java·前端·javascript
有梦想的攻城狮9 分钟前
Java中的Double类型的存在精度丢失详解
java·开发语言·bigdecimal·double
m0_7482495426 分钟前
Java 语言提供了八种基本类型【文123】
java·开发语言·python
移幻漂流31 分钟前
Kotlin 如何解决 Java 的核心痛点:现代语言特性的深度剖析
java·python·kotlin
leikooo33 分钟前
ShardingSphere 下更新分片键导致的失败问题分析与解决
java·spring·apache
a程序小傲35 分钟前
中国邮政Java面试被问:Netty的FastThreadLocal优化原理
java·服务器·开发语言·面试·职场和发展·github·哈希算法
jay神40 分钟前
基于Java的水果网上订购平台
java·mysql·vue·springboot·计算机毕业设计
小北方城市网42 分钟前
SpringBoot 集成 MyBatis-Plus 实战(高效 CRUD 与复杂查询):简化数据库操作
java·数据库·人工智能·spring boot·后端·安全·mybatis
小白不会Coding44 分钟前
一文详解JVM中类的生命周期
java·jvm·类的生命周期
醇氧1 小时前
java.lang.NumberFormatException: For input string: ““
java·开发语言·spring