go提供了sync包和channel来解决协程同步和通讯。
方式1:
sync.WaitGroup是等待一组协程结束,sync.WaitGroup只有3个方法,Add()添加一个计数,Done()减去一个计数,Wait()阻塞直到所有任务完
GO类型转换及与C的类型转换
类型转换
语法dst := float32(src)
示例var num int = 520
f32 := float32(num)
i64 := int64(num)
注意:加入val是一个指针,int32(
简介
Go的标准包Container中包含了常用的容器类型,包括conatiner/list,container/heap,container/ring,本篇讲解container/ring的使用。
ring包
ring包提供了环形链表的操
GOPATH 和 GOROOT
不同于其他语言,go中没有项目的说法,只有包, 其中有两个重要的路径,GOROOT 和 GOPATH GOROOT是安装目录,GOPATH是我们的工作空间, 用来存放包的目录GOPATH可以设置多个,其中,第
go设置多个GOPATH
linux:GOPATH=
fallthrough:Go里面switch默认相当于每个case最后带有break,匹配成功后不会自动向下执行其他case,而是跳出整个switch, 但是可以使用fallthrough强制执行后面的case代码。
示例程序1:switc
由于go对私有gitlab的仓库支持不好,得使用下面这些步骤
设置git使用 ssh协议git config --global url.
用go mod的时候应该会遇到无法拉取私有仓库的问题从你gitlab平台生成一个token,在~/.gitcoinfig中
[http]下增加extraheader = PRIVATE-TOKEN: 你的token
[url]下增加 ins