跳到主要内容

闭包表的实现

· 阅读需 10 分钟

为什么要用闭包表?你来看这个:

Spring Boot+MyBatis构建无限层级组织架构设计|邻接表vs闭包表性能对比|树形结构资料存储方案 - jzssuanfa - 博客园

闭包表

闭包表(Closure Table)的核心思想其实非常简单:把“谁是谁的子孙”这个需要递归计算的关系,提前算好并存成一张扁平的二维表。

查询时,你不再需要“找爸爸、找爷爷、找太爷爷”,而是直接在这张表里问:“谁是 X 的所有后代?”或者“X 属于哪些祖先的管辖范围?”。

JDK21 虚拟线程 VS 传统线程

· 阅读需 5 分钟

JDK21 虚拟线程 VS 传统线程 - 向着朝阳 - 博客园

JDK21虚拟线程的定义与核心特性

轻量级实现‌:虚拟线程(Virtual Threads)由JVM管理,与操作系统线程解耦,单应用可创建数百万个线程,解决了传统线程的资源限制问题。‌

核心优势对比‌:

  • 资源消耗低‌:创建和销毁开销仅为平台线程的1/1000,适用于高并发场景。‌

  • 高效调度‌:通过挂起机制减少上下文切换,I/O阻塞时自动释放载体线程(Carrier Thread)。‌

  • 简化编程‌:语法与传统线程兼容,无需学习复杂并发框架。‌