java教程技术文章
-
讲清Java并行Stream的遇到顺序、Collector并发特征和稳定结果设计,给出保序List、并发Map与带序号排序的选择方法。232 收藏 -
Java Stream 分组后保留每组首条记录,先用稳定排序定义首条,再用 toMap 合并函数保留旧值;复杂比较规则则集中到 Collector,并检查并行流、null 与重复键边界。265 收藏 -
Java虚拟线程支持ThreadLocal,但不适合用它缓存连接、大对象或可复用资源。本文说明状态隔离、remove清理、继承语义与迁移检查边界。451 收藏 -
Java虚拟线程适合承载大量等待型请求。本文用按任务创建、资源闸门和有界CPU执行器,说明阻塞I/O服务的线程模型与迁移边界。451 收藏 -
用一个三模块示例说明 Java ServiceLoader 如何通过 uses 与 provides with 在模块路径中注册并发现服务实现,同时给出编译、启动和空结果排查清单。378 收藏 -
Java 正则中的命名捕获组可以用 Matcher.group(String) 按名称读取,但重复量词只保留最近一次成功捕获;需要全部结果时应改用 find 循环收集。365 收藏 -
围绕 FileChannel、ByteBuffer 和 transferTo,讲清 Java NIO 大文件传输的缓冲控制、部分读写处理、资源关闭与验收边界。346 收藏 -
分代 ZGC 是否适合,不能只看堆大小。本文从暂停目标、存活集、分配速率、并发回收余量和机器内存出发,给出 Xmx、SoftMaxHeapSize 与收集器选择的判断方法。118 收藏 -
通过 G1 Region 大小、humongous 阈值和连续 Region 数量,可以保守估算大对象尺寸区间;本文同时解释 Humongous regions 日志为何不能单独定位某个对象。383 收藏 -
从返回类型、嵌套 Future、Async 执行器和异常传播四个角度,说明 Java CompletableFuture 中 thenApply 与 thenCompose 的选择方法。306 收藏 -
文章 · java教程 | 1个月前 | Java教程 · CompletableFuture · Java HttpClient Java异步请求超时 CompletableFuture异常处理 HttpTimeoutException sendAsync异常读取
本文用 Java HttpClient 和 CompletableFuture 给出异步 HTTP 请求的生产写法,说明 request timeout、HTTP 状态码、HttpTimeoutException 与 CompletionException 根因的区别。278 收藏 -
围绕 Java 21 pattern switch 和 sealed 类型,说明 permitted 分支覆盖、when 守卫、无守卫兜底、支配关系与 null 边界的实现方法。448 收藏 -
围绕 Java record 的紧凑构造器说明组件校验、参数归一化、隐式字段赋值、重载构造器委托与 List.copyOf 防御性复制的适用边界。345 收藏 -
文章 · java教程 | 1个月前 | 虚拟线程 · Java StructuredTaskScope Java结构化并发 Java子任务取消 StructuredTaskScope结果汇总 Java虚拟线程并发
围绕 JDK 25/26 预览 API,讲清 Java StructuredTaskScope 如何组织子任务、在失败时取消未完成任务,并通过 join 与 Subtask.get 汇总结果,同时比较它与 CompletableFuture、ExecutorService 的适用边界。117 收藏 -
Java 虚拟线程出现 carrier 被固定时,先按 JDK 版本判断 synchronized 是否属于 pinning 来源,再用 JFR 的 jdk.VirtualThreadPinned 和 jdk.tracePinnedThreads 定位阻塞栈,最后决定保留 synchronized、拆分临界区或改用 ReentrantLock。149 收藏