Go 期刊二

93 阅读1分钟

Go语言爱好者周刊:34%的正确率

不一样的 Go

深入理解Go的GC回收机制

GoV1.8三色标记法加混合写屏障机制,栈空间不启动屏障机制,堆空间启动屏障机制。整个过程几乎不需要STW,效率较高。

Go语言中defer的一些坑

defer语句是Go中一个非常有用的特性,可以将一个方法延迟到包裹该方法的方法返回时执行,在实际应用中,defer语句可以充当其他语言中try…catch…的角色,也可以用来处理关闭文件句柄等收尾操作。

但是我们经常在代码评审中发现defer使用不当,导致产生新的问题,大家可以看篇文章避险(坑)。

安利一个 Go 开发技巧

在 Go 程序中如何实现个性化信息的动态注入呢?

在 go build 命令里有一个 -ldflags 参数,该参数可以接收 -X importpath.name=value 形式的值,该值就是实现信息动态注入的核心入口。

Go 工程化规范设计

首先理解工程化规范包括的两方面:

  • 非编码类规范:开源规范,文档规范,版本规范,Git 规范,发布规范,…

  • 编码类规范:目录规范,代码规范,接口规范,日志规范,错误码规范,…

规范这么多,大家何去何从?先搞个vega2-go开发框架吧,我们慢慢来统一。

Go 1.18

Go1.18 新特性TryLock一出,面试题库里少了一道题,好慌。