/images/avatar.png

池鱼的编程随想

【转载】git子模块入门

注:本文转载自 Git: submodule 子模块简明教程 | A Quest After Perspectives 如有侵权,联系删除 有种情况我们经常会遇到:某个工作中的项目需要包含并使用另一个项目。 也许是第三方库

go程序编译优化

gcflags go build 可以用 -gcflags 给 go 编译器传入参数,也就是传给 go tool compile 的参数,因此可以用 go tool compile --help 查看所有可用的参数。 常⽤参数 -m 开启内存分配分析(逃逸)。可以帮助

go的类型系统01

本文介绍 类型转换(Conversion)、类型断言(type assertion) 和类型切换(type switch)。 这三个概念类似但是又完全不同。 类型转换 Conversion 将

go的类型系统02

本文介绍 类型别名与类型定义。 类型别名 类型别名需要在别名和原类型之间加上赋值符号 = ,使用类型别名定义的类型与原类型等价,Go 语言内建的基本类型

go的noCopy机制

最近在读Go源码时发现高频注释语句“XXX must not be copied after first use“。例如sync包下的Pool、Cond、WaitGroup、Mutex、Map