想理解锁和对象分配,可以从 Java 实验开始;想判断 Agent 编排的价值,可以沿任务流追源码;想先做出一个结果,就从工具和 Web 小实验入手。下面把文章串成三条路线,按先后顺序读,也可以直接跳到你正在处理的问题。

阅读路线示意。具体文章链接与先后顺序见下面的目录。
路线一:从可观察行为走进 Java 源码
- 可重入锁:用持有次数看清加锁与释放。先看本机实验中的持有次数变化,理解为什么内层解锁后,外层仍持有锁;再区分读锁总计数与读线程人数。
- AQS 等待流程。沿 JDK 21 源码和本机线程栈,观察获取失败后的排队、park 与重新竞争。被唤醒为什么不等于已经取得锁?
- AQS 与 Monitor:等锁、等条件和唤醒后重入。接着看一次通知后的重入实验:条件已经满足,线程为什么还可能处于 BLOCKED?
- Java 对象分配:逃逸分析、TLAB 和堆分配。换到 JVM,用分配计数对照源码,区分"分配被消除"和"对象在堆内怎样分配";零分配字节为什么不能直接解释成栈上分配?
- ThreadLocal 的边界:线程池残留、继承时机与虚拟线程。回到任务的生命周期,观察线程池复用留下的值、继承发生的时机,以及虚拟线程自身保存的关联。
这条路线可以用来练习技术交流:先描述现象,再解释机制,最后说清实验没有证明什么。
路线二:理解 Agent 编排,再讨论工程收益
- 拆开 oh-my-openagent 的编排层。先追踪任务怎样选模型、派发、回收结果和续跑,分清角色、Category 与工作区。文章限定固定提交的 OpenCode 1.x 适配路径。
- DeepSeek 的 Super-agent 原型:会不会多出审查成本?。再问编排是否值得:自动接单、更多 PR 和更少通知,怎样影响人工审查、返工与协调?
两篇都是文档与源码分析,没有部署测评或效率排名。可以把它们连起来读:先理解执行机制,再为收益设计可验证的指标。
路线三:从工具操作走到 Web 与网络实验
- Git Worktree:保留未提交改动,同时开分支修 Bug。用最小仓库保留两个工作现场,弄清哪些独立、哪些共享,以及怎样收尾。
- PowerShell 清理目录前的路径边界。在隔离目录中检查空值、相似前缀和 Junction 祖先,理解路径预检的作用与局限。
- PRG:POST 之后为什么用 303 跳到 GET。运行本机 HTTP 小实验,观察刷新结果页与再次提交的区别,也看清 PRG 没有解决的业务去重问题。
- 后端已经流式输出,前端为什么还是等到最后?。对照代理转发、人工缓冲和前端读取方式,在真实浏览器里观察首行出现的差别。
- 四元组不同,为什么 bind 同一源端口仍会失败?。再向 TCP 走一层,用 Windows 回环实验分清连接标识和本地绑定规则,不把该平台结果推广到所有系统。
需要规划浏览器运维入口时,还可以读浏览器远程运维的边界:这篇侧重方案分析,把 HTTPS 入口、文件权限、SSH 连接与 tmux 会话分开讨论。
按主题继续查找
- Java 核心、并发与 JVM:语言、集合、线程协作与运行时机制。
- AI 工程与 Agent 实践:模型接入、工具与任务编排。
- AI 观察与思考:一手发布、设计判断与反例。
- Spring 与后端设计:请求链路、组件协作与方案取舍。
- 数据库、缓存与 SQL 优化:查询、事务、性能与一致性。
- 开发环境与工程工具:环境、构建、版本控制和部署。
- 网络与系统排障:协议、连接、资源现象与排查依据。
早期跨语言笔记和题单保留在次级归档,阅读时以各篇的适用版本与修订范围为准。