# 码农桃花源

## 码农桃花源

- [README](https://qcrao91.gitbook.io/go/master.md)
- [channel](https://qcrao91.gitbook.io/go/channel.md)
- [06 - 从一个关闭的 channel 仍然能读出数据吗](https://qcrao91.gitbook.io/go/channel/cong-yi-ge-guan-bi-de-channel-reng-ran-neng-du-chu-shu-ju-ma.md)
- [12 - channel 有哪些应用](https://qcrao91.gitbook.io/go/channel/channel-you-na-xie-ying-yong.md)
- [08 - 如何优雅地关闭 channel](https://qcrao91.gitbook.io/go/channel/ru-he-you-ya-di-guan-bi-channel.md)
- [10 - channel 在什么情况下会引起资源泄漏](https://qcrao91.gitbook.io/go/channel/channel-zai-shi-mo-qing-kuang-xia-hui-yin-qi-zi-yuan-xie-lou.md)
- [00 - 什么是 CSP](https://qcrao91.gitbook.io/go/channel/shi-mo-shi-csp.md)
- [channel 底层的数据结构是什么](https://qcrao91.gitbook.io/go/channel/channel-di-ceng-de-shu-ju-jie-gou-shi-shi-mo.md)
- [09 - channel 发送和接收元素的本质是什么](https://qcrao91.gitbook.io/go/channel/channel-fa-song-he-jie-shou-yuan-su-de-ben-zhi-shi-shi-mo.md)
- [11 - 关于 channel 的 happened-before 有哪些](https://qcrao91.gitbook.io/go/channel/guan-yu-channel-de-happenedbefore-you-na-xie.md)
- [04 - 向 channel 发送数据的过程是怎样的](https://qcrao91.gitbook.io/go/channel/xiang-channel-fa-song-shu-ju-de-guo-cheng-shi-zen-yang-de.md)
- [03 - 从 channel 接收数据的过程是怎样的](https://qcrao91.gitbook.io/go/channel/cong-channel-jie-shou-shu-ju-de-guo-cheng-shi-zen-yang-de.md)
- [07 - 操作 channel 的情况总结](https://qcrao91.gitbook.io/go/channel/cao-zuo-channel-de-qing-kuang-zong-jie.md)
- [05 - 关闭一个 channel 的过程是怎样的](https://qcrao91.gitbook.io/go/channel/guan-bi-yi-ge-channel-de-guo-cheng-shi-zen-yang-de.md)
- [map](https://qcrao91.gitbook.io/go/map.md)
- [map 的底层实现原理是什么](https://qcrao91.gitbook.io/go/map/map-de-di-ceng-shi-xian-yuan-li-shi-shi-mo.md)
- [可以边遍历边删除吗](https://qcrao91.gitbook.io/go/map/ke-yi-bian-bian-li-bian-shan-chu-ma.md)
- [map 的删除过程是怎样的](https://qcrao91.gitbook.io/go/map/map-de-shan-chu-guo-cheng-shi-zen-yang-de.md)
- [可以对 map 的元素取地址吗](https://qcrao91.gitbook.io/go/map/ke-yi-dui-map-de-yuan-su-qu-di-zhi-ma.md)
- [如何比较两个 map 相等](https://qcrao91.gitbook.io/go/map/ru-he-bi-jiao-liang-ge-map-xiang-deng.md)
- [如何实现两种 get 操作](https://qcrao91.gitbook.io/go/map/ru-he-shi-xian-liang-zhong-get-cao-zuo.md)
- [map 是线程安全的吗](https://qcrao91.gitbook.io/go/map/map-shi-xian-cheng-an-quan-de-ma.md)
- [map 的遍历过程是怎样的](https://qcrao91.gitbook.io/go/map/map-de-bian-li-guo-cheng-shi-zen-yang-de.md)
- [map 中的 key 为什么是无序的](https://qcrao91.gitbook.io/go/map/map-zhong-de-key-wei-shi-mo-shi-wu-xu-de.md)
- [float 类型可以作为 map 的 key 吗](https://qcrao91.gitbook.io/go/map/float-lei-xing-ke-yi-zuo-wei-map-de-key-ma.md)
- [map 的赋值过程是怎样的](https://qcrao91.gitbook.io/go/map/map-de-fu-zhi-guo-cheng-shi-zen-yang-de.md)
- [map 的扩容过程是怎样的](https://qcrao91.gitbook.io/go/map/map-de-kuo-rong-guo-cheng-shi-zen-yang-de.md)
- [interface](https://qcrao91.gitbook.io/go/interface.md)
- [iface 和 eface 的区别是什么](https://qcrao91.gitbook.io/go/interface/iface-he-eface-de-qu-bie-shi-shi-mo.md)
- [Go 接口与 C++ 接口有何异同](https://qcrao91.gitbook.io/go/interface/go-jie-kou-yu-c++-jie-kou-you-he-yi-tong.md)
- [如何用 interface 实现多态](https://qcrao91.gitbook.io/go/interface/ru-he-yong-interface-shi-xian-duo-tai.md)
- [接口转换的原理](https://qcrao91.gitbook.io/go/interface/jie-kou-zhuan-huan-de-yuan-li.md)
- [Go 语言与鸭子类型的关系](https://qcrao91.gitbook.io/go/interface/go-yu-yan-yu-ya-zi-lei-xing-de-guan-xi.md)
- [值接收者和指针接收者的区别](https://qcrao91.gitbook.io/go/interface/zhi-jie-shou-zhe-he-zhi-zhen-jie-shou-zhe-de-qu-bie.md)
- [接口的构造过程是怎样的](https://qcrao91.gitbook.io/go/interface/jie-kou-de-gou-zao-guo-cheng-shi-zen-yang-de.md)
- [编译器自动检测类型是否实现接口](https://qcrao91.gitbook.io/go/interface/bian-yi-qi-zi-dong-jian-ce-lei-xing-shi-fou-shi-xian-jie-kou.md)
- [类型转换和断言的区别](https://qcrao91.gitbook.io/go/interface/lei-xing-zhuan-huan-he-duan-yan-de-qu-bie.md)
- [接口的动态类型和动态值](https://qcrao91.gitbook.io/go/interface/jie-kou-de-dong-tai-lei-xing-he-dong-tai-zhi.md)
- [标准库](https://qcrao91.gitbook.io/go/biao-zhun-ku.md)
- [context](https://qcrao91.gitbook.io/go/biao-zhun-ku/context.md)
- [context.Value 的查找过程是怎样的](https://qcrao91.gitbook.io/go/biao-zhun-ku/context/context.value-de-cha-zhao-guo-cheng-shi-zen-yang-de.md)
- [context 如何被取消](https://qcrao91.gitbook.io/go/biao-zhun-ku/context/context-ru-he-bei-qu-xiao.md)
- [context 有什么作用](https://qcrao91.gitbook.io/go/biao-zhun-ku/context/context-you-shi-mo-zuo-yong.md)
- [context 是什么](https://qcrao91.gitbook.io/go/biao-zhun-ku/context/context-shi-shi-mo.md)
- [unsafe](https://qcrao91.gitbook.io/go/biao-zhun-ku/unsafe.md)
- [如何利用unsafe包修改私有成员](https://qcrao91.gitbook.io/go/biao-zhun-ku/unsafe/ru-he-li-yong-unsafe-bao-xiu-gai-si-you-cheng-yuan.md)
- [Go指针和unsafe.Pointer有什么区别](https://qcrao91.gitbook.io/go/biao-zhun-ku/unsafe/go-zhi-zhen-he-unsafe.pointer-you-shi-mo-qu-bie.md)
- [如何实现字符串和byte切片的零拷贝转换](https://qcrao91.gitbook.io/go/biao-zhun-ku/unsafe/ru-he-shi-xian-zi-fu-chuan-he-byte-qie-pian-de-ling-kao-bei-zhuan-huan.md)
- [如何利用unsafe获取slice\&map的长度](https://qcrao91.gitbook.io/go/biao-zhun-ku/unsafe/ru-he-li-yong-unsafe-huo-qu-slicemap-de-chang-du.md)
- [goroutine 调度器](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi.md)
- [M 如何找工作](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/m-ru-he-zhao-gong-zuo.md)
- [goroutine 调度时机有哪些](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/goroutine-tiao-du-shi-ji-you-na-xie.md)
- [什么是 go shceduler](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/shi-mo-shi-go-shceduler.md)
- [goroutine 如何退出](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/goroutine-ru-he-tui-chu.md)
- [描述 scheduler 的初始化过程](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/miao-shu-scheduler-de-chu-shi-hua-guo-cheng.md)
- [什么是workstealing](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/shi-mo-shi-workstealing.md)
- [mian gorutine 如何创建](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/mian-gorutine-ru-he-chuang-jian.md)
- [什么是M:N模型](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/shi-mo-shi-mn-mo-xing.md)
- [g0 栈何用户栈如何切换](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/g0-zhan-he-yong-hu-zhan-ru-he-qie-huan.md)
- [schedule 循环如何运转](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/schedule-xun-huan-ru-he-yun-zhuan.md)
- [GPM 是什么](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/gpm-shi-shi-mo.md)
- [schedule 循环如何启动](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/schedule-xun-huan-ru-he-qi-dong.md)
- [sysmon 后台监控线程做了什么](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/sysmon-hou-tai-jian-kong-xian-cheng-zuo-le-shi-mo.md)
- [goroutine和线程的区别](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/goroutine-he-xian-cheng-de-qu-bie.md)
- [一个调度相关的陷阱](https://qcrao91.gitbook.io/go/goroutine-tiao-du-qi/yi-ge-tiao-du-xiang-guan-de-xian-jing.md)
- [编译和链接](https://qcrao91.gitbook.io/go/bian-yi-he-lian-jie.md)
- [逃逸分析是怎么进行的](https://qcrao91.gitbook.io/go/bian-yi-he-lian-jie/tao-yi-fen-xi-shi-zen-mo-jin-hang-de.md)
- [GoRoot 和 GoPath 有什么用](https://qcrao91.gitbook.io/go/bian-yi-he-lian-jie/goroot-he-gopath-you-shi-mo-yong.md)
- [Go 编译链接过程概述](https://qcrao91.gitbook.io/go/bian-yi-he-lian-jie/go-bian-yi-lian-jie-guo-cheng-gai-shu.md)
- [Go 编译相关的命令详解](https://qcrao91.gitbook.io/go/bian-yi-he-lian-jie/go-bian-yi-xiang-guan-de-ming-ling-xiang-jie.md)
- [Go 程序启动过程是怎样的](https://qcrao91.gitbook.io/go/bian-yi-he-lian-jie/go-cheng-xu-qi-dong-guo-cheng-shi-zen-yang-de.md)
- [反射](https://qcrao91.gitbook.io/go/fan-she.md)
- [Go 语言中反射有哪些应用](https://qcrao91.gitbook.io/go/fan-she/go-yu-yan-zhong-fan-she-you-na-xie-ying-yong.md)
- [什么情况下需要使用反射](https://qcrao91.gitbook.io/go/fan-she/shi-mo-qing-kuang-xia-xu-yao-shi-yong-fan-she.md)
- [如何比较两个对象完全相同](https://qcrao91.gitbook.io/go/fan-she/ru-he-bi-jiao-liang-ge-dui-xiang-wan-quan-xiang-tong.md)
- [Go 语言如何实现反射](https://qcrao91.gitbook.io/go/fan-she/go-yu-yan-ru-he-shi-xian-fan-she.md)
- [什么是反射](https://qcrao91.gitbook.io/go/fan-she/shi-mo-shi-fan-she.md)
- [数组和切片](https://qcrao91.gitbook.io/go/shu-zu-he-qie-pian.md)
- [数组和切片有什么异同](https://qcrao91.gitbook.io/go/shu-zu-he-qie-pian/shu-zu-he-qie-pian-you-shi-mo-yi-tong.md)
- [切片作为函数参数](https://qcrao91.gitbook.io/go/shu-zu-he-qie-pian/qie-pian-zuo-wei-han-shu-can-shu.md)
- [切片的容量是怎样增长的](https://qcrao91.gitbook.io/go/shu-zu-he-qie-pian/qie-pian-de-rong-liang-shi-zen-yang-zeng-chang-de.md)
- [GC](https://qcrao91.gitbook.io/go/gc.md)
- [GC](https://qcrao91.gitbook.io/go/gc/gc.md)
