slice 和 array
要说 slice,那实在是太让人熟悉了,从功能上讲 slice 支持追加,按索引引用,按索引范围生成新的 slice,自动扩容等,和 C++ 或 Java 中的
Vector 有些类似,但也有一些区别。
不过 Go 里的 slice 还有一个底层数组的概念,这一点和其它语言不同。
runtime/slice.go
type slice struct
原文地址:
> https://github.com/cch123/golang-notes
汗,写完这篇就发现 Go 目前的 master 分支上 select 的实现有所修改,比如文中的 hselect
结构体已经消失了。之后还是抽时间分析分析新版。。
select 本身是 Go 提供的一个语法糖,每次你写
select {
}
的时候,实际上是相当于调用了一大堆函数。。只是 Go 的 runtime 内部帮你把这些复杂性屏蔽掉了。但是屏蔽也是有代价的,因为现在为止(
这次的 ascii 图太多了。。。粘到 blog 里毁灭性的不能看,所以还是看原文吧 orz
> https://github.com/cch123/golang-notes/blob/master/map.md
从办了双币信用卡开始买英文原版书以后,陆陆续续已经买了几十本了(看得完吗你。
嗯,其实大多数国外出版社的书质量还是可以的,比如 O'Reilly,NoStarch,Manning,Apress,微软之类的出版社。特别是
NoStarch,虽然每本书上面可能都有一条不明所以的彩边,而且封面以屎黄色(汗为主,不过感觉他们的封面设计的都挺好看的,比如下面这样的:
应该是有专门的封面设计师来做的吧。
manning 出版社的一般都是一些少数民族人物的绘作:
挺好看的。
O'Reilly 嘛,大家都熟悉,就是各种各样的动物书:
Apress 相对就死板一些:
微软也差不多,沉闷的大公司风格:
唯独这个 Packt。。不知道该怎么吐槽了,
系统调用
原文地址:
> https://github.com/cch123/golang-notes/blob/master/syscall.md
概念
一图胜千言:
+ - - - - - - - - - - - - - - - User Mode - - -