在上一篇文章中,我在编译的时候,需要指定一大串的参数,相信你也已经崩溃了吧? 更合理的做法,是将这些参数 Makefile 来管理维护,在 Makefile 中可以用 shell 命令去获取一些 git 的信息,比如下面这样子 #...
Golang 教程
在 Go 中使用 -ldflags 实现动态信息注入
在查看一些工具的版本时,我们时常能看到版本信息非常多,连 git 的 commit id 都有 ~ ➤ docker version Client: Cloud integration: v1.0.22 Version: 20.10.11 API version: 1.41 Go vers...
Go 1.18 系列篇(四):一文掌握 Fuzzing 模糊测试
系列导读: 1、Go 1.18 系列篇(一):如何升级 Go 1.18 ? 2、Go 1.18 系列篇(二):一文掌握泛型的使用 3、Go 1.18 系列篇(三):一文掌握 Go 工作区模式 1. 什么是模糊测试? 单元测试,大家应该都写过...
Go 1.18 系列篇(二):一文掌握泛型的使用
系列导读: 1、Go 1.18 系列篇(一):如何升级 Go 1.18 ? 泛型,可以说是 Go 这几年来最具争议的功能,应该没人有意见吧? 其实 Go 在早前的 Beta 版本中,就提供了对泛型的支持,但还不够成熟,直到 Go 1.18...
Go 1.18 系列篇(一):如何升级 Go 1.18 ?
在上周,Go 1.18 终于是发布了,在上一篇文章中,我在留言中说,接下来几天会把玩一下 Go 1.18 的新特性,并跟大家分享一下学习心得。 今天第一篇,先升级一下 Go 1.18 ,关于新特性,咱明天再开整~ Go 官方推...
如何使用 pprof 对 Go 程序进行性能分析?
pprof 是 Go 程序性能分析常用的工具,关于 pprof 有很多的包,它们分别是: runtime/pprof:Go 的内置库,比较基础,不常用 pkg/profile:对 runtime/pprof 进行简化,只需要一行代码即可,等程序运行结束后才...
Go 语言万能的通道编程模型
通道,是 Go 语言的一大特色,初次接触 Go 语言时,着实被他给惊艳到了,它让协程之间的通信变得非常的简单。 简单,意味着灵活,按理说,这是好事啊,可你要知道灵活的另一个潜台词,就是不标准,不同的人,使...
零基础学 Go 语言(41):Go 读文件的 10 种方法
首发自微信公众号《Go编程时光》,如无授权请勿转载 查看本系列教程目录,请点击 零基础小白入门 Go语言 系列教程 Go 中对文件内容读写的方法,非常地多,其中大多数是基于 syscall 或者 os 库的高级封装...
零基础学 Go 语言(40):Go 语言四种类型转换方法
查看本系列教程目录,请点击 零基础小白入门 Go语言 系列教程 Go 语言是静态语言,在编写代码时,就对类型有严格的要求,一旦类型不匹配,就有可能编译失败。 因此在写代码时,就要经常用到类型的转换,这些知...
Go 语言面试题 100 讲之 037篇:哪些情况会导致协程泄露?
查看完整目录 -->《Go 语言面试题 100 讲》 协程泄露是指,在程序运行过程中,有一些协程由于某些原因,无法正常退出。 协程的运行是需要占用内存和 CPU 时间的,一旦这种协程越来越多,会导致内存无端被浪费...