-
Java ZGC 的低暂停目标仍然依赖足够的堆余量。本文从 Xmx、SoftMaxHeapSize、Xms、AlwaysPreTouch 和 ZUncommit 的关系出发,说明如何在突发分配、内存预算和延迟稳定性之间做配置取舍,并用 MXBean 做最小复查。
-
Java G1 混合回收暂停不能只看一行总耗时。本文从 Unified Logging 的事件行入手,结合 gc+phases、gc+ergo+cset 和 gc+heap 日志,定位集合选择、根扫描、对象复制与收尾阶段的长暂停来源。
-
Java Matcher 切换 Pattern 后不会自动回到输入开头。本文用紧凑示例说明 usePattern 如何保留当前位置、为什么旧分组失效,以及它与 reset、region、find(int) 的区别。
-
Java FFM 映射 C 结构体参数时,先用 MemoryLayout 描述字段、填充和对齐,再用 FunctionDescriptor 组合函数签名;本文区分结构体值、结构体指针与 Arena 生命周期。
-
Java sealed class 的许可列表只描述直接子类型。通过原创类层级示例区分封闭和开放分支,说明反射查询、对象归属及业务准入的不同用途。
-
Java HttpClient 的 HTTP/2 连接复用重点在于长期复用同一个 HttpClient,而不是每次请求新建客户端。本文说明 HTTP_2 协议偏好、HttpResponse.version() 实际结果、HTTP/2 多路复用,以及 connectionPoolSize 与 keepalive.timeout.h2 的配置边界。
-
Java 21 的 record pattern 可以递归匹配嵌套 record,并直接提取深层字段。本文用订单、客户和地址三层结构说明最小写法,重点处理 null、var 推断、泛型边界和可读性取舍。
-
Java ClassValue 适合把按 Class 计算出的派生数据与类型关联起来。本文用一个类型元数据示例说明 get、computeValue、remove 的关系,解释并发计算、异常和何时不该使用 ClassValue。
-
Java 虚拟线程迁移可保留同步阻塞代码,但要把任务线程、入口准入和下游并发限制分开。本文给出执行器接入片段与异常、资源和关闭边界。
-
Java 25 的 StructuredTaskScope 仍是 preview API。本文用一个小型后端实验说明作用域取消如何中断未完成子任务,区分失败、超时、join 与 close 的结果,并给出正确响应 InterruptedException 的代码边界。