深度解密Go语言之 pprof

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

一般我们使用二分法,或者牛顿迭代法计算一个浮点数的平方根。但在这个函数里,作者使用了一个“魔数”,根本没有迭代,两步就直接算出了平方根。令人叹为观止!

阅读全文

Golang error 的突围

写过 C 的同学知道,C 语言中常常返回整数错误码(errno)来表示函数处理出错,通常用 -1 来表示错误,用 0 表示正确。

而在 Go 中,我们使用 error 类型来表示错误,不过它不再是一个整数类型,是一个接口类型:

阅读全文

深度解密调度器源码系列

上篇文章从全局视角讲了 Go 的调度器,其实在这个过程中,我还阅读了 Go 的源码,并作了详细的讲解。

整个系列共 10 篇文章,深度解析调度器的源码。

源码阅读系列

阅读全文

深度解密Go语言之scheduler

好久不见,你还好吗?距离上一篇文章已经过去了一个多月了,迟迟未更新文章,我也很着急啊。

跟大家汇报一下,这段时间我在看 proc.go 的源码,其实就是调度器的源码。代码有几千行之多,不像以往的 map,channel 等等。想把这些代码都看明白,是一个庞大的工程。到今天为止,我也不敢说我都看明白了。

阅读全文

深度解密Go语言之channel

大家好!“深度解密 Go 语言”系列好久未见,我们今天讲 channel,预祝阅读愉快!在开始正文之前,我们先说些题外话。

上一篇关于 Go 语言的文章讲 Go 程序的整个编码、编译、运行、退出的全过程。文章发出后,反响强烈,在各大平台的阅读量都不错。例如博客园登上了 48 小时阅读排行榜,并且受到了编辑推荐,占据首页头条位置整整一天;在开发者头条首页精选的位置霸榜一周时间……

阅读全文

如何打造一份优雅的简历

最近一些朋友找我内推,并且给我发了他们的简历。很多简历在我看来都不合格,不只是内容,还有格式,在我这都没过关。然后,我都会把我的简历模板贡献出来,收获了诸多好评。

为了让更多读者朋友拥有一份优雅得体的简历,我会倾其所能,把经验全部传授出来,希望你能有收获。

虽然现在不是求职的高峰期,但是社招、实习还是随时都可以进行的。我也不是一个追热点的人,只求对你有所帮助。另外,简历的制作其实并不是一蹴而就的事,当你知道了写简历的套路,平时就会有意识的积累素材,所以什么时候都可以学习如何打造一份优雅的简历。

阅读全文

| | | 140.8k