摘要: 目录1. 使用 runtime.NumGoroutine()2. 使用 pprof 监控3. 使用 debug 包打印堆栈4. 第三方工具关键注意事项总结 在 Go 程序中,有多种方法可以查看当前运行的 Goroutine 数量,以下是几种常见的方式: 1. 使用 runtime.NumGorout 阅读全文
posted @ 2025-04-09 16:01 guanyubo 阅读(309) 评论(0) 推荐(0)
摘要: 目录数据拷贝次数与系统调用次数的详细解释1. 数据拷贝次数传统文件读取+网络发送流程(4次拷贝)2. 系统调用次数传统读写流程(2次系统调用)3. 零拷贝优化对比场景:将文件内容发送到网络(1) 传统方式(4次拷贝,2+次系统调用)(2) io.Copy优化(2次拷贝,1次系统调用)(3) send 阅读全文
posted @ 2025-04-09 14:10 guanyubo 阅读(93) 评论(0) 推荐(1)
摘要: 目录 《动手学深度学习》 阅读全文
posted @ 2025-04-09 13:23 guanyubo 阅读(20) 评论(0) 推荐(0)
摘要: 目录高性能 Goroutine 池实现关键设计点详解1. 并发控制机制2. 任务队列设计3. 优雅关闭实现4. 防泄漏保障5. 超时控制扩展建议增加扩展功能增强版高性能 Goroutine 池实现实现的4个扩展功能详解1. 任务结果收集2. 动态扩缩容3. 错误处理增强4. 性能监控关键设计决策 高 阅读全文
posted @ 2025-04-09 10:58 guanyubo 阅读(70) 评论(0) 推荐(0)
摘要: 目录1. 零内存占用2. 用途3. 唯一性4. 对比其他“零值”示例代码总结 在 Go 语言中,struct{}{} 确实是一个特殊的值,它具有以下特点: 1. 零内存占用 它是空结构体 struct{} 的实例,而空结构体不占用任何内存空间(0 字节)。 这是因为空结构体没有任何字段需要存储。 2 阅读全文
posted @ 2025-04-09 10:01 guanyubo 阅读(79) 评论(0) 推荐(0)