- 博客(6)
- 收藏
- 关注
原创 golang中defer和recover函数
defer语句是用来延迟执行代码的,意思就是在执行一段代码的时候,只有执行完毕那一时间,才会执行defer语句。而且在遇见多个defer的时候,最开始的defer会是最后一个执行,可以通过以下代码看出来example 1package mainimport "fmt"func main() { defer fmt.Println("Begin") for i := 1; i < 4; i++ { defer fmt.Printf("i value is [%d]\n", i) }
2020-07-06 14:31:43 732
转载 golang 使用vscode不能自动补全
检查插件是否安装gocodels $GOPATH/bindlv goreturns srcgo-outline godef guru查看后发现在bin目录中没有gocode文件,安装gocode插件安装go get -u -v github.com/mdempsky/gocodego install github.com/mdempsky/gocode查看是否安装成功ls $GOPATH/bindlv gocode goreturns srcgo-outline gode
2020-07-03 10:39:16 2299
原创 go chan通道详解
通道相当于一个队列,他的值是从零开始的。当通道的值为零时,可以看做为一个无值的队列,反之,为一个有值的队列,它可以保证并发的安全性,并且是先进先出的。声明方式example 1package mainimport "fmt"func main() { num := make(chan int, 3) //声明一个容量为3的int类型的通道 num <- 3 //传入值 num <- 2 num <- 1 //遍历通道,取出加入的值 for i:
2020-06-21 11:54:48 909
原创 go中切片len和cap的关系
数组的长度是固定不变的,而切片的长度是可变的,它会随着切片的数据增长而增大,但是不会随着数据减少而减小。定义切片example1package mainimport "fmt"func main() { test1 := make([]int,10) fmt.Printf("len is %d\n",len(test1)) fmt.Printf("cap is %d", cap(test1))}结果len is 10cap is 10Process exiting with
2020-06-20 14:59:05 3693 1
原创 go map定义
go语言中mapmap相当于python的字典,是key和value的一种集合map声明方式var map_test map[keytype]valuetypeexample:var user map[string]string下边看一个实验package mainimport ( "fmt")func main() { user := make(map[string]string) user["zhangsan"] = "工程师" fmt.Println(user)
2020-06-19 18:07:31 3139
原创 elastalert查询Elasticsearch实现业务监控
elastalert环境python2.7安装pip install elastalertgit clone https://github.com/Yelp/elastalert.gitpip install “setuptools>=11.3”python setup.py install配置文件解析(config.yaml)Rules_folder:用来加载子配置文件,...
2020-05-07 18:05:50 834
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人