Go Worker Pool 的两种思路实现
写带结果收集的 worker pool,任务分发通常不难。真正容易写岔的是怎么停。
停之前先把这两个问题答死,后面实现几乎是顺水推舟:
- 已经进队、还没被 worker 拿走的任务,还要不要做?
- 已经做完、结果还没发出去的任务,结果能不能丢?
对这两个问题的回答不同,中断机制和 API 形态就会分叉。下面按这两种答案,分别看实现。
写带结果收集的 worker pool,任务分发通常不难。真正容易写岔的是怎么停。
停之前先把这两个问题答死,后面实现几乎是顺水推舟:
对这两个问题的回答不同,中断机制和 API 形态就会分叉。下面按这两种答案,分别看实现。
从 JavaScript / TypeScript 转过来学 Go 时,最容易困惑的一点是:Go 到底是"值传递"还是"引用传递"?答案是——Go 只有值传递,没有引用传递。但偏偏 slice、map、channel 这些类型用起来又像"引用"。这篇随记就来理清这层看似矛盾的关系:什么是引用语义、如何用指针显式取引用,以及为什么 channel、func、context 这些类型天生就不需要你再套一层指针。
MV3 下用 world: "MAIN" 劫持原生 API,并在无 Background 依赖时做跨 World 通信。
RPC 像打电话,Webhook 像回执短信:两种跨系统协作方式的分工笔记。
在复杂模块里,把计算与状态放在 React 外的 store,再订阅到组件——useSyncExternalStore 的用法笔记。
运行时切换主题色:CSS 变量 + 关键色派生。
为一个 React + Nest.js 的前后端分离项目,针对特定路由增加服务端渲染(SSR + Hydration)。注意:本文讨论的是传统 SSR 水合,不是 React Server Components(RSC)。
面临多分支判断,如果面对结构数据只能 if,else。switch 无法很好地解决。同时,大量的 if,else 判断会让其条件判断分支没有那么直观,尤其是复杂数据中多个属性进行层级、通配符判断。本文提出基于函数链式判断进行条件分支管理。
使用双重Token验证的用户验证方案。
React高阶组件