首页
文章列表
标签墙
返回找工具啦
源码解析
共 6 篇文章
Go语言Select语句的伪随机选择机制源码解析
2026-05-09 07:27:00
Go语言的select语句是并发编程中处理多个通道(channel)操作的关键工具。当select语句中存在多个可执行的case时,Go运行时会从中随机选择一个执行。这种“随机”并非完全的随机,而是基于特定算法实现的“伪随机”。本文将深入Go运行时源码,解析select语句的伪随机选择机制。 1.
Go语言
Select语句
并发编程
46
0
React Fiber架构为什么能实现可中断渲染
2026-04-29 12:20:19
React Fiber架构为什么能实现可中断渲染 React 16 之前的版本使用“栈协调器”,渲染过程像是一次过山车,一旦开始就必须跑完全程。如果组件树很深,主线程会被长时间占用,导致用户输入无法响应,页面出现卡顿。React Fiber 架构的出现解决了这个问题,它将渲染任务变成了“可暂停、可恢
ReactFiber
可中断渲染
前端开发
55
0
Go语言sync.Map的LoadAndDelete原子操作实现
2026-04-27 00:29:23
Go语言sync.Map的LoadAndDelete原子操作实现 在并发编程中,从 map 中读取一个键值对并立即将其删除是一个常见的需求。如果使用普通的 map 加锁操作,通常需要两步:先 Load 再 Delete。这不仅繁琐,而且在两步操作之间,其他协程可能会修改该键的值,导致数据不一致。Go
Go语言
sync.Map
并发编程
52
0
Go语言context.WithCancel的取消函数调用幂等性
2026-04-26 00:16:00
Go语言context.WithCancel的取消函数调用幂等性 在Go语言的并发编程中,context 包是控制goroutine生命周期的核心工具。许多开发者在处理错误退出或超时逻辑时,常常会产生一个顾虑:如果我多次调用同一个取消函数,程序是否会panic?或者是否会产生未知的副作用? 答案是:
Go语言
并发编程
Context包
56
0
React Hooks为什么不能写在条件语句里?链表实现原理
2026-04-19 19:28:53
React Hooks为什么不能写在条件语句里?链表实现原理 React 要求 Hooks 在组件顶层按完全相同的顺序被调用。这一约束源于其底层实现:链表。一旦顺序改变,React 无法正确复用之前的 Hook 状态,导致 Bug。 1. 理解核心机制:Fiber 节点与 Hooks 链表 Reac
React
ReactHooks
链表原理
66
0
Go 上下文:context 包与取消操作
2026-04-05 19:41:42
Go 上下文:context 包与取消操作 在 Go 语言中,context 是一个看似简单却蕴含深意的标准库包。它解决的问题非常明确:如何在 goroutine 之间传递取消信号、截止时间以及请求作用域内的值。 当一个请求到达服务器,服务器可能需要启动多个 goroutine 来处理不同的子任务。
Go语言
context
并发编程
68
0