原文:深度解密Go语言之context

目录 什么是 context 为什么有 context context 底层实现原理 整体概览 接口 Context canceler 结构体 emptyCtx cancelCtx timerCtx valueCtx 如何使用 context 传递共享的数据 取消 goroutine 防止 goroutine 泄漏 context 真的这么好吗 总结 参考资料 Go 语言的 context 包短 ...

2019-06-12 08:46 2 4786 推荐指数:

查看详情

深度解密Go语言之 pprof

[toc] 相信很多人都听过“雷神 3”关于性能优化的故事。在一个 3D 游戏引擎的源码里,John Carmack 将 1/sqrt(x) 这个函数的执行效率优化到了极致。 一般我们使用二分法, ...

Mon Nov 11 16:16:00 CST 2019 3 2577
深度解密Go语言之 scheduler

目录 前置知识 os scheduler 线程切换 函数调用过程分析 goroutine 是怎么工作的 什么是 go ...

Tue Sep 03 03:16:00 CST 2019 6 2776
深度解密Go语言之map

目录 什么是 map 为什么要用 map map 的底层如何实现 map 内存模型 创建 map 哈希函数 key 定位过程 ...

Wed May 22 17:02:00 CST 2019 2 8053
深度解密Go语言之反射

目录 什么是反射 为什么要用反射 反射是如何实现的 types 和 interface 反射的基本函数 反射的三大定律 反射 ...

Tue May 07 06:36:00 CST 2019 1 3290
深度解密Go语言之Slice

Go 语言的 slice 很好用,不过也有一些坑。slice 是 Go 语言一个很重要的数据结构。网上已经有很多文章写过了,似乎没必要再写。但是每个人看问题的视角不同,写出来的东西自然也不一样。我这篇会从更底层的汇编语言去解读它。而且在我写这篇文章的过程中,发现绝大部分文章都存在一些问题,文章里 ...

Tue Apr 02 06:23:00 CST 2019 2 4436
深度解密Go语言之unsafe

目录 指针类型 什么是 unsafe 为什么有 unsafe unsafe 实现原理 unsafe 如何使用 获取 slice 长度 获 ...

Mon Jun 03 17:07:00 CST 2019 0 2805
深度解密Go语言之channel

目录 并发模型 并发与并行 什么是 CSP 什么是 channel channel 实现 CSP 为什么要 ch ...

Mon Jul 22 06:06:00 CST 2019 0 2411
深度解密Go语言之关于 interface 的10个问题

目录 1. Go 语言与鸭子类型的关系 2. 值接收者和指针接收者的区别 方法 值接收者和指针接收者 两者分别在何时使用 3. iface 和 eface 的区别是什么 4. 接口的动态类型和动态值 5. 编译器 ...

Thu Apr 25 14:23:00 CST 2019 4 5786
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM